Skip to content

Commit f77ca83

Browse files
committed
1 parent 618f86d commit f77ca83

File tree

4 files changed

+61
-0
lines changed

4 files changed

+61
-0
lines changed

0 0 0 0 10 0.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
0 0 0 0 10 0
2+
0 -10 0 0 0 0
3+
10 -10 0 10 0 0

a.max

-16 KB
Binary file not shown.

exporter/maxscript/test.ms

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
clearListener()
2+
redrawViews()
3+
obj = $
4+
objMesh = obj.mesh
5+
vIndex = 2
6+
7+
v = getVert objMesh vIndex
8+
(in coordsys world getVert objMesh vIndex)
9+
obj.transform
10+
obj.objectTransform
11+
ObjectOffsetTM2 = obj.objectTransform * inverse obj.transform
12+
iObjectOffsetTM2 = inverse ObjectOffsetTM2
13+
v * objectOffsetTM2 -- OK
14+
scaleTM = scaleMatrix obj.objectOffsetScale
15+
rotTM = obj.objectOffsetRot as matrix3
16+
posTM = transMatrix obj.objectOffsetPos
17+
objectOffsetTM = scaleTM * rotTM * posTM
18+
v * objectOffsetTM -- OK
19+
v * obj.transform
20+
v * inverse obj.transform
21+
v * obj.objectTransform
22+
v * inverse obj.objectTransform
23+
in coordsys world getVert objMesh vIndex
24+
in coordsys parent getVert objMesh vIndex
25+
in coordsys local getVert objMesh vIndex
26+
in coordsys grid getVert objMesh vIndex
27+
in coordsys screen getVert objMesh vIndex
28+
in coordsys obj getVert objMesh vIndex
29+
in coordsys obj.transform getVert objMesh vIndex
30+
in coordsys (inverse obj.transform) getVert objMesh vIndex
31+
in coordsys obj.objectTransform getVert objMesh vIndex
32+
in coordsys (inverse obj.objectTransform) getVert objMesh vIndex
33+
in coordsys objectOffsetTM getVert objMesh vIndex
34+
in coordsys (inverse objectOffsetTM) getVert objMesh vIndex

exporter/maxscript/test2.ms

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
clearListener()
2+
3+
-- Sélectionne l'objet
4+
obj = $
5+
objMesh = obj.mesh
6+
vIndex = 1
7+
8+
-- Obtenir la position du sommet dans l'espace local de l'objet
9+
localVert = getVert objMesh vIndex
10+
11+
-- Obtenir les matrices de transformation
12+
objectTransformTM = obj.objectTransform
13+
nodeTransformTM = obj.transform
14+
15+
-- Calculer la matrice de transformation pour obtenir l'espace du pivot
16+
-- Cette matrice devrait transformer l'espace local de l'objet en espace du pivot
17+
objectOffsetTM = objectTransformTM * inverse nodeTransformTM
18+
19+
-- Appliquer la transformation du pivot à l'objet pour obtenir la position du vertex dans l'espace du pivot
20+
vertexInPivotSpace = in coordsys (inverse objectOffsetTM) localVert
21+
22+
-- Afficher les résultats
23+
format "Local Vertex: %\n" localVert
24+
format "Vertex in Pivot Space (Coordsys): %\n" vertexInPivotSpace

0 commit comments

Comments
 (0)