Python Reference Guide
 
Loading...
Searching...
No Matches
Samples\Math\Vectors.py
1# Copyright 2009 Autodesk, Inc. All rights reserved.
2# Use of this software is subject to the terms of the Autodesk license agreement
3# provided at the time of installation or download, or which otherwise accompanies
4# this software in either electronic or hard copy form.
5#
6# Script description:
7# Show extended functions for Vectors.
8#
9# Topic: operators and utility functions for FBVector2d, FBVector3d, FBSVector ,FBVector4d,
10# FBNormal, FBVertex, FBUV, FBColor, FBColorAndAlpha.
11#
12
13from pyfbsdk import FBVector2d, FBVector3d, FBSVector ,FBVector4d, FBNormal, FBVertex, FBUV, FBColor, FBColorAndAlpha
14
15# FBVector2d
16lList = [1.0,1.0]
17lVector2dA = FBVector2d()
18lVector2dB = FBVector2d()
19lVector2dResult = FBVector2d(lList)
20print(lVector2dResult)
21
22lDouble = 1.0
23lEqual = True
24
25lVector2dResult = lVector2dA + lVector2dB
26lVector2dResult = lVector2dA - lVector2dB
27lVector2dResult = lVector2dA * lVector2dB
28lVector2dResult = lVector2dA / lVector2dB
29
30lVector2dResult += lVector2dA
31lVector2dResult -= lVector2dA
32lVector2dResult *= lVector2dA
33lVector2dResult /= lVector2dA
34
35lVector2dResult = lVector2dA + lDouble
36lVector2dResult = lVector2dA - lDouble
37lVector2dResult = lVector2dA * lDouble
38lVector2dResult = lVector2dA / lDouble
39
40lVector2dResult += lDouble
41lVector2dResult -= lDouble
42lVector2dResult *= lDouble
43lVector2dResult /= lDouble
44
45lVector2dResult = -lVector2dResult
46
47lVector2dResult.CopyFrom(lVector2dA)
48lVector2dResult.CopyFrom(lList)
49lEqual = lVector2dA.NotEqual(lVector2dB)
50lEqual = lVector2dA.IsEqual(lVector2dB)
51lList = lVector2dA.GetList()
52
53print(lVector2dA)
54print(lVector2dB)
55print(lVector2dResult)
56print(lDouble)
57print(lEqual)
58print(lList)
59
60
61# FBVector3d
62lList = [1.0,1.0,1.0]
63lVector3dA = FBVector3d()
64lVector3dB = FBVector3d()
65lVector3dResult = FBVector3d(lList)
66print(lVector3dResult)
67
68lDouble = 1.0
69lEqual = True
70
71lVector3dResult = lVector3dA + lVector3dB
72lVector3dResult = lVector3dA - lVector3dB
73lVector3dResult = lVector3dA * lVector3dB
74lVector3dResult = lVector3dA / lVector3dB
75
76lVector3dResult += lVector3dA
77lVector3dResult -= lVector3dA
78lVector3dResult *= lVector3dA
79lVector3dResult /= lVector3dA
80
81lVector3dResult = lVector3dA + lDouble
82lVector3dResult = lVector3dA - lDouble
83lVector3dResult = lVector3dA * lDouble
84lVector3dResult = lVector3dA / lDouble
85
86lVector3dResult += lDouble
87lVector3dResult -= lDouble
88lVector3dResult *= lDouble
89lVector3dResult /= lDouble
90
91lVector3dResult = -lVector3dResult
92
93lVector3dResult.CopyFrom(lVector3dA)
94lVector3dResult.CopyFrom(lList)
95lEqual = lVector3dA.NotEqual(lVector3dB)
96lEqual = lVector3dA.IsEqual(lVector3dB)
97lList = lVector3dA.GetList()
98
99lDouble = lVector3dA.Length()
100lDouble = lVector3dA.SquareLength()
101lDouble = lVector3dA.Distance(lVector3dB)
102lVector3dResult.Normalize()
103lDouble = lVector3dA.DotProduct(lVector3dB)
104lVector3dResult = lVector3dA.CrossProduct(lVector3dB)
105
106
107print(lVector3dA)
108print(lVector3dB)
109print(lVector3dResult)
110print(lDouble)
111print(lEqual)
112print(lList)
113
114
115# FBSVector
116lList = [1.0,1.0,1.0]
117lSVectorA = FBSVector()
118lSVectorB = FBSVector()
119lSVectorResult = FBSVector(lList)
120print(lSVectorResult)
121
122lDouble = 1.0
123lEqual = True
124
125lSVectorResult = lSVectorA + lSVectorB
126lSVectorResult = lSVectorA - lSVectorB
127lSVectorResult = lSVectorA * lSVectorB
128lSVectorResult = lSVectorA / lSVectorB
129
130lSVectorResult += lSVectorA
131lSVectorResult -= lSVectorA
132lSVectorResult *= lSVectorA
133lSVectorResult /= lSVectorA
134
135lSVectorResult = lSVectorA + lDouble
136lSVectorResult = lSVectorA - lDouble
137lSVectorResult = lSVectorA * lDouble
138lSVectorResult = lSVectorA / lDouble
139
140lSVectorResult = -lSVectorResult
141
142lSVectorResult.CopyFrom(lSVectorA)
143lSVectorResult.CopyFrom(lList)
144lEqual = lSVectorA.NotEqual(lSVectorB)
145lEqual = lSVectorA.IsEqual(lSVectorB)
146lList = lSVectorA.GetList()
147
148lDouble = lSVectorA.Length()
149lDouble = lSVectorA.SquareLength()
150lSVectorResult.Normalize()
151lDouble = lSVectorA.DotProduct(lSVectorB)
152
153print(lSVectorA)
154print(lSVectorB)
155print(lSVectorResult)
156print(lDouble)
157print(lEqual)
158print(lList)
159
160# FBVector4d
161lList = [1.0,1.0,1.0,1.0]
162lVector4dA = FBVector4d()
163lVector4dB = FBVector4d()
164lVector4dResult = FBVector4d(lList)
165print(lVector4dResult)
166
167lDouble = 1.0
168lEqual = True
169
170lVector4dResult = lVector4dA + lVector4dB
171lVector4dResult = lVector4dA - lVector4dB
172lVector4dResult = lVector4dA * lVector4dB
173lVector4dResult = lVector4dA / lVector4dB
174
175lVector4dResult += lVector4dA
176lVector4dResult -= lVector4dA
177lVector4dResult *= lVector4dA
178lVector4dResult /= lVector4dA
179
180lVector4dResult = lVector4dA + lDouble
181lVector4dResult = lVector4dA - lDouble
182lVector4dResult = lVector4dA * lDouble
183lVector4dResult = lVector4dA / lDouble
184
185lVector4dResult += lDouble
186lVector4dResult -= lDouble
187lVector4dResult *= lDouble
188lVector4dResult /= lDouble
189
190lVector4dResult = -lVector4dResult
191
192lVector4dResult.CopyFrom(lVector4dA)
193lVector4dResult.CopyFrom(lList)
194lEqual = lVector4dA.NotEqual(lVector4dB)
195lEqual = lVector4dA.IsEqual(lVector4dB)
196lList = lVector4dA.GetList()
197
198lDouble = lVector4dA.Length()
199lDouble = lVector4dA.SquareLength()
200lDouble = lVector4dA.Distance(lVector4dB)
201lVector4dResult.Normalize()
202lDouble = lVector4dA.DotProduct(lVector4dB)
203lVector4dResult = lVector4dA.CrossProduct(lVector4dB)
204
205print(lVector4dA)
206print(lVector4dB)
207print(lVector4dResult)
208print(lDouble)
209print(lEqual)
210print(lList)
211
212
213# FBNormal
214lList = [1.0,1.0,1.0]
215lNormalA = FBNormal()
216lNormalB = FBNormal()
217lNormalResult = FBNormal(lList)
218print(lNormalResult)
219
220lDouble = 1.0
221lEqual = True
222
223lNormalResult = lNormalA + lNormalB
224lNormalResult = lNormalA - lNormalB
225lNormalResult = lNormalA * lNormalB
226lNormalResult = lNormalA / lNormalB
227
228lNormalResult += lNormalA
229lNormalResult -= lNormalA
230lNormalResult *= lNormalA
231lNormalResult /= lNormalA
232
233lNormalResult = lNormalA + lDouble
234lNormalResult = lNormalA - lDouble
235lNormalResult = lNormalA * lDouble
236lNormalResult = lNormalA / lDouble
237
238lNormalResult += lDouble
239lNormalResult -= lDouble
240lNormalResult *= lDouble
241lNormalResult /= lDouble
242
243lNormalResult = -lNormalResult
244
245lNormalResult.CopyFrom(lNormalA)
246lNormalResult.CopyFrom(lList)
247lEqual = lNormalA.NotEqual(lNormalB)
248lEqual = lNormalA.IsEqual(lNormalB)
249lList = lNormalA.GetList()
250
251lDouble = lNormalA.Length()
252lDouble = lNormalA.SquareLength()
253lNormalResult.Normalize()
254lDouble = lNormalA.DotProduct(lNormalB)
255lNormalResult = lNormalA.CrossProduct(lNormalB)
256
257print(lNormalA)
258print(lNormalB)
259print(lNormalResult)
260print(lDouble)
261print(lEqual)
262print(lList)
263
264
265# FBVertex
266lList = [1.0,1.0,1.0,1.0]
267lVertexA = FBVertex()
268lVertexB = FBVertex()
269lVertexResult = FBVertex(lList)
270print(lVertexResult)
271
272lDouble = 1.0
273lEqual = True
274
275lVertexResult = lVertexA + lVertexB
276lVertexResult = lVertexA - lVertexB
277lVertexResult = lVertexA * lVertexB
278lVertexResult = lVertexA / lVertexB
279
280lVertexResult += lVertexA
281lVertexResult -= lVertexA
282lVertexResult *= lVertexA
283lVertexResult /= lVertexA
284
285lVertexResult = lVertexA + lDouble
286lVertexResult = lVertexA - lDouble
287lVertexResult = lVertexA * lDouble
288lVertexResult = lVertexA / lDouble
289
290lVertexResult += lDouble
291lVertexResult -= lDouble
292lVertexResult *= lDouble
293lVertexResult /= lDouble
294
295lVertexResult = -lVertexResult
296print(lList)
297lVertexResult.CopyFrom(lVertexA)
298lVertexResult.CopyFrom(lList)
299lEqual = lVertexA.NotEqual(lVertexB)
300lEqual = lVertexA.IsEqual(lVertexB)
301lList = lVertexA.GetList()
302
303lDouble = lVertexA.Length()
304lDouble = lVertexA.SquareLength()
305lDouble = lVertexA.Distance(lVertexB)
306lVertexResult.Normalize()
307lDouble = lVertexA.DotProduct(lVertexB)
308lVertexResult = lVertexA.CrossProduct(lVertexB)
309
310print(lVertexA)
311print(lVertexB)
312print(lVertexResult)
313print(lDouble)
314print(lEqual)
315print(lList)
316
317
318# FBUV
319lList = [1.0,1.0]
320lUVA = FBUV()
321lUVB = FBUV()
322lUVResult = FBUV(lList)
323print(lUVResult)
324
325lDouble = 1.0
326lEqual = True
327
328lUVResult = lUVA + lUVB
329lUVResult = lUVA - lUVB
330lUVResult = lUVA * lUVB
331lUVResult = lUVA / lUVB
332
333lUVResult += lUVA
334lUVResult -= lUVA
335lUVResult *= lUVA
336lUVResult /= lUVA
337
338lUVResult = lUVA + lDouble
339lUVResult = lUVA - lDouble
340lUVResult = lUVA * lDouble
341lUVResult = lUVA / lDouble
342
343lUVResult += lDouble
344lUVResult -= lDouble
345lUVResult *= lDouble
346lUVResult /= lDouble
347
348lUVResult = -lUVResult
349
350lUVResult.CopyFrom(lUVA)
351lUVResult.CopyFrom(lList)
352lEqual = lUVA.NotEqual(lUVB)
353lEqual = lUVA.IsEqual(lUVB)
354lList = lUVA.GetList()
355
356print(lUVA)
357print(lUVB)
358print(lUVResult)
359print(lDouble)
360print(lEqual)
361print(lList)
362
363# FBColor
364lList = [1.0,1.0,1.0]
365lColorA = FBColor()
366lColorB = FBColor()
367lColorResult = FBColor(lList)
368print(lColorResult)
369
370lDouble = 1.0
371lEqual = True
372
373lColorResult = lColorA + lColorB
374lColorResult = lColorA - lColorB
375lColorResult = lColorA * lColorB
376lColorResult = lColorA / lColorB
377
378lColorResult += lColorA
379lColorResult -= lColorA
380lColorResult *= lColorA
381lColorResult /= lColorA
382
383lColorResult = lColorA + lDouble
384lColorResult = lColorA - lDouble
385lColorResult = lColorA * lDouble
386lColorResult = lColorA / lDouble
387
388lColorResult += lDouble
389lColorResult -= lDouble
390lColorResult *= lDouble
391lColorResult /= lDouble
392
393lColorResult = -lColorResult
394
395lColorResult.CopyFrom(lColorA)
396lColorResult.CopyFrom(lList)
397lEqual = lColorA.NotEqual(lColorB)
398lEqual = lColorA.IsEqual(lColorB)
399lList = lColorA.GetList()
400
401print(lColorA)
402print(lColorB)
403print(lColorResult)
404print(lDouble)
405print(lEqual)
406print(lList)
407
408# FBColorAndAlpha
409lList = [1.0,1.0,1.0,1.0]
410lColorAndAlphaA = FBColorAndAlpha()
411lColorAndAlphaB = FBColorAndAlpha()
412lColorAndAlphaResult = FBColorAndAlpha(lList)
413print(lColorAndAlphaResult)
414
415lDouble = 1.0
416lEqual = True
417
418lColorAndAlphaResult = lColorAndAlphaA + lColorAndAlphaB
419lColorAndAlphaResult = lColorAndAlphaA - lColorAndAlphaB
420lColorAndAlphaResult = lColorAndAlphaA * lColorAndAlphaB
421lColorAndAlphaResult = lColorAndAlphaA / lColorAndAlphaB
422
423lColorAndAlphaResult += lColorAndAlphaA
424lColorAndAlphaResult -= lColorAndAlphaA
425lColorAndAlphaResult *= lColorAndAlphaA
426lColorAndAlphaResult /= lColorAndAlphaA
427
428lColorAndAlphaResult = lColorAndAlphaA + lDouble
429lColorAndAlphaResult = lColorAndAlphaA - lDouble
430lColorAndAlphaResult = lColorAndAlphaA * lDouble
431lColorAndAlphaResult = lColorAndAlphaA / lDouble
432
433lColorAndAlphaResult += lDouble
434lColorAndAlphaResult -= lDouble
435lColorAndAlphaResult *= lDouble
436lColorAndAlphaResult /= lDouble
437
438lColorAndAlphaResult = -lColorAndAlphaResult
439
440lColorAndAlphaResult.CopyFrom(lColorAndAlphaA)
441lColorAndAlphaResult.CopyFrom(lList)
442lEqual = lColorAndAlphaA.NotEqual(lColorAndAlphaB)
443lEqual = lColorAndAlphaA.IsEqual(lColorAndAlphaB)
444lList = lColorAndAlphaA.GetList()
445
446print(lColorAndAlphaA)
447print(lColorAndAlphaB)
448print(lColorAndAlphaResult)
449print(lDouble)
450print(lEqual)
451print(lList)
Color and alpha vector.
Definition: pyfbsdk_generated.h:4497
Color vector.
Definition: pyfbsdk_generated.h:4470
Three dimensional scaling vector.
Definition: pyfbsdk_generated.h:16592