Open Inventor Release 2024.2.1
 
Loading...
Searching...
No Matches
SoMFMatrix.h
1/*=======================================================================
2 * Copyright 1991-1996, Silicon Graphics, Inc.
3 * ALL RIGHTS RESERVED
4 *
5 * UNPUBLISHED -- Rights reserved under the copyright laws of the United
6 * States. Use of a copyright notice is precautionary only and does not
7 * imply publication or disclosure.
8 *
9 * U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND:
10 * Use, duplication or disclosure by the Government is subject to restrictions
11 * as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights
12 * in Technical Data and Computer Software clause at DFARS 252.227-7013 and/or
13 * in similar or successor clauses in the FAR, or the DOD or NASA FAR
14 * Supplement. Contractor/manufacturer is Silicon Graphics, Inc.,
15 * 2011 N. Shoreline Blvd. Mountain View, CA 94039-7311.
16 *
17 * THE CONTENT OF THIS WORK CONTAINS CONFIDENTIAL AND PROPRIETARY
18 * INFORMATION OF SILICON GRAPHICS, INC. ANY DUPLICATION, MODIFICATION,
19 * DISTRIBUTION, OR DISCLOSURE IN ANY FORM, IN WHOLE, OR IN PART, IS STRICTLY
20 * PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SILICON
21 * GRAPHICS, INC.
22**=======================================================================*/
23/*=======================================================================
24** Author : Paul S. Strauss (MMM yyyy)
25**=======================================================================*/
26/*=======================================================================
27 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
28 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
29 *** ***
30 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
31 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
32 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
33 *** ***
34 *** RESTRICTED RIGHTS LEGEND ***
35 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
36 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
37 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
38 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
39 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
40 *** ***
41 *** COPYRIGHT (C) 1996-2014 BY FEI S.A.S, ***
42 *** BORDEAUX, FRANCE ***
43 *** ALL RIGHTS RESERVED ***
44**=======================================================================*/
45/*=======================================================================
46** Modified by : VSG (MMM YYYY)
47**=======================================================================*/
48
49
50#ifndef _SO_MF_MATRIX_
51#define _SO_MF_MATRIX_
52
53#include <Inventor/fields/SoSubField.h>
54#include <Inventor/SbLinear.h>
55
57//
58// SoMFMatrix subclass of SoMField.
59//
61
92class SoMFMatrix : public SoMField {
93
94 // Use standard field stuff
95 SO_MFIELD_HEADER(SoMFMatrix, SbMatrix, const SbMatrix &);
96 SO_MFIELD_SETVALUESPOINTER_HEADER(SbMatrix);
97
98 public:
105 void setValue(float a11, float a12, float a13, float a14,
106 float a21, float a22, float a23, float a24,
107 float a31, float a32, float a33, float a34,
108 float a41, float a42, float a43, float a44);
109
120 void set1Value(int index, const SbMatrixd &md);
121
130 void setValue(const SbMatrixd &md);
131
149 void setValues(int start, int num, const SbMatrixd *md);
150
151 private:
152 static void initClass();
153 static void exitClass();
154
155};
156
157#endif /* _SO_MF_MATRIX_ */
158
4x4 matrix class.
Definition SbMatrix.h:309
<a href="IconLegend.html"><img src="extTGS.gif" alt="VSG extension" border="0"></a> 4x4 matrix class...
Definition SbMatrix.h:756
Multiple-value field containing any number of 4x4 matrices.
Definition SoMFMatrix.h:92
void setValue(const SbMatrixd &md)
Sets the first value in the array to newValue , a double precision matrix, and deletes the second an...
void setValues(int start, int num, const SbMatrixd *md)
Sets num values starting at index start to the values in newValues , an array of double precisio...
void set1Value(int index, const SbMatrixd &md)
Sets the index 'th value in the array to newValue , a double precision matrix.
void setValue(float a11, float a12, float a13, float a14, float a21, float a22, float a23, float a24, float a31, float a32, float a33, float a34, float a41, float a42, float a43, float a44)
Makes this field contain one and only one value, which is the matrix given by the 16 values.
Base class for all multiple-valued fields.
Definition SoMField.h:134