mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-04 18:06:22 +03:00
156 lines
4.0 KiB
Plaintext
156 lines
4.0 KiB
Plaintext
puts "====================================="
|
|
puts "AIS_Manipulator - translate an object"
|
|
puts "====================================="
|
|
|
|
set anImage1 $imagedir/${casename}_1.png
|
|
set anImage2 $imagedir/${casename}_2.png
|
|
set anImage3 $imagedir/${casename}_3.png
|
|
set anImage4 $imagedir/${casename}_4.png
|
|
set anImage5 $imagedir/${casename}_5.png
|
|
|
|
# -------------------------------------
|
|
# create manipulated and helper objects
|
|
# -------------------------------------
|
|
|
|
pcylinder c1 5 10
|
|
pcylinder c2 10 20
|
|
ttranslate c1 100 0 20
|
|
ttranslate c2 100 0 0
|
|
trotate c1 100 0 25 0 1 0 90
|
|
trotate c1 100 0 25 0 0 1 10
|
|
|
|
# -------------------------------------
|
|
# display manipulated objects (scene 1)
|
|
# -------------------------------------
|
|
|
|
vdisplay c1
|
|
vdisplay c2
|
|
vsetdispmode 1
|
|
vaxo
|
|
vfit
|
|
|
|
# ------------------
|
|
# attach manipulator
|
|
# ------------------
|
|
|
|
vmanipulator m -attach c1 -adjustPosition 1 -adjustSize 0 -enableModes 1 -size 40
|
|
vmanipulator m -followRotation 1
|
|
vmanipulator m -followTranslation 1
|
|
vmanipulator m -part 0 4 0
|
|
vmanipulator m -part 1 4 0
|
|
vmanipulator m -part 2 4 0
|
|
|
|
# ----------------------------------------------------
|
|
# test x translation transform (world reference frame)
|
|
# ----------------------------------------------------
|
|
|
|
set mouse_pick {204 112}
|
|
set mouse_drag {204 156}
|
|
|
|
vmoveto {*}$mouse_pick
|
|
vselect {*}$mouse_pick
|
|
vmanipulator m -startTransform {*}$mouse_pick
|
|
vmanipulator m -transform {*}$mouse_drag
|
|
vmanipulator m -stopTransform
|
|
vselect 0 0
|
|
vmoveto {*}$mouse_drag
|
|
vdump $anImage1
|
|
|
|
# ----------------------------------------------------
|
|
# test y translation transform (world reference frame)
|
|
# ----------------------------------------------------
|
|
|
|
set mouse_pick {215 160}
|
|
set mouse_drag {265 132}
|
|
|
|
vmoveto {*}$mouse_pick
|
|
vselect {*}$mouse_pick
|
|
vmanipulator m -startTransform {*}$mouse_pick
|
|
vmanipulator m -transform {*}$mouse_drag
|
|
vmanipulator m -stopTransform
|
|
vselect 0 0
|
|
vmoveto {*}$mouse_drag
|
|
vdump $anImage2
|
|
|
|
# ----------------------------------------------------
|
|
# test z translation transform (world reference frame)
|
|
# ----------------------------------------------------
|
|
|
|
set mouse_pick {263 145}
|
|
set mouse_drag {127 065}
|
|
|
|
vmoveto {*}$mouse_pick
|
|
vselect {*}$mouse_pick
|
|
vmanipulator m -startTransform {*}$mouse_pick
|
|
vmanipulator m -transform {*}$mouse_drag
|
|
vmanipulator m -stopTransform
|
|
vselect 0 0
|
|
vmoveto {*}$mouse_drag
|
|
vdump $anImage3
|
|
|
|
# -------------------------------------
|
|
# display manipulated objects (scene 2)
|
|
# -------------------------------------
|
|
|
|
vremove -all
|
|
vdisplay c1
|
|
vdisplay c2
|
|
vsetdispmode 1
|
|
vaxo
|
|
vfit
|
|
|
|
# -------------------------------------------
|
|
# attach manipulator and rotate around z axis
|
|
# -------------------------------------------
|
|
|
|
vmanipulator m -attach c1 -adjustPosition 1 -adjustSize 0 -enableModes 1 -size 40
|
|
vmanipulator m -followRotation 1
|
|
vmanipulator m -followTranslation 1
|
|
vmanipulator m -part 0 4 0
|
|
vmanipulator m -part 1 4 0
|
|
vmanipulator m -part 2 4 0
|
|
|
|
set mouse_pick {223 143}
|
|
set mouse_drag {181 141}
|
|
|
|
vmoveto {*}$mouse_pick
|
|
vselect {*}$mouse_pick
|
|
vmanipulator m -startTransform {*}$mouse_pick
|
|
vmanipulator m -transform {*}$mouse_drag
|
|
vmanipulator m -stopTransform
|
|
vselect 0 0
|
|
vmoveto {*}$mouse_drag
|
|
|
|
# ----------------------------------------------------
|
|
# test x translation transform (object reference frame)
|
|
# ----------------------------------------------------
|
|
|
|
set mouse_pick {199 131}
|
|
set mouse_drag {175 168}
|
|
|
|
vmoveto {*}$mouse_pick
|
|
vselect {*}$mouse_pick
|
|
vmanipulator m -startTransform {*}$mouse_pick
|
|
vmanipulator m -transform {*}$mouse_drag
|
|
vmanipulator m -stopTransform
|
|
vselect 0 0
|
|
vmoveto {*}$mouse_drag
|
|
vdump $anImage4
|
|
|
|
# ----------------------------------------------------
|
|
# test y translation transform (object reference frame)
|
|
# ----------------------------------------------------
|
|
|
|
set mouse_pick {199 164}
|
|
set mouse_drag {246 177}
|
|
|
|
vmoveto {*}$mouse_pick
|
|
vselect {*}$mouse_pick
|
|
vmanipulator m -startTransform {*}$mouse_pick
|
|
vmanipulator m -transform {*}$mouse_drag
|
|
vmanipulator m -stopTransform
|
|
vselect 0 0
|
|
vmoveto {*}$mouse_drag
|
|
vdump $anImage5
|
|
|
|
set to_dump_screen 0 |