[brlcad-commits] SF.net SVN: brlcad:[53683] brlcad/trunk/src/tclscripts/archer
Open Source Solid Modeling CAD
Brought to you by:
brlcad
From: <bo...@us...> - 2012-11-14 18:06:09
|
Revision: 53683 http://brlcad.svn.sourceforge.net/brlcad/?rev=53683&view=rev Author: bob1961 Date: 2012-11-14 18:06:02 +0000 (Wed, 14 Nov 2012) Log Message: ----------- This reduces errors when using snap-to-grid for moving bot points. Modified Paths: -------------- brlcad/trunk/src/tclscripts/archer/Archer.tcl brlcad/trunk/src/tclscripts/archer/BotEditFrame.tcl Modified: brlcad/trunk/src/tclscripts/archer/Archer.tcl =================================================================== --- brlcad/trunk/src/tclscripts/archer/Archer.tcl 2012-11-14 17:45:24 UTC (rev 53682) +++ brlcad/trunk/src/tclscripts/archer/Archer.tcl 2012-11-14 18:06:02 UTC (rev 53683) @@ -6348,8 +6348,7 @@ if {$GeometryEditFrame::mEditCommand != ""} { if {$mSelectedObjType == "bot"} { if {$mNumSelectedBotPts == 1} { - set sl [gedCmd pane_view2screen $_dm [list $vx $vy]] - $itk_component(botView) moveBotElement $_dm $_obj [lindex $sl 0] [lindex $sl 1] + $itk_component(botView) moveBotElement $_dm $_obj $vx $vy } else { eval gedCmd ocenter $_obj $new_ocenter } Modified: brlcad/trunk/src/tclscripts/archer/BotEditFrame.tcl =================================================================== --- brlcad/trunk/src/tclscripts/archer/BotEditFrame.tcl 2012-11-14 17:45:24 UTC (rev 53682) +++ brlcad/trunk/src/tclscripts/archer/BotEditFrame.tcl 2012-11-14 18:06:02 UTC (rev 53683) @@ -86,9 +86,9 @@ method createGeometry {_name} method p {obj args} method moveBotEdgeMode {_dname _obj _x _y} - method moveBotElement {_dname _obj _x _y} + method moveBotElement {_dname _obj _vx _vy} method moveBotFaceMode {_dname _obj _x _y} - method moveBotPt {_dname _obj _x _y} + method moveBotPt {_dname _obj _vx _vy} method moveBotPtMode {_dname _obj _viewz _x _y} method moveBotPts {_dname _obj _x _y _plist} method moveBotPtsMode {_dname _obj _x _y} @@ -385,10 +385,10 @@ } -::itcl::body BotEditFrame::moveBotElement {_dname _obj _x _y} { +::itcl::body BotEditFrame::moveBotElement {_dname _obj _vx _vy} { switch -- $mEditMode \ $movePoints { - moveBotPt $_dname $_obj $_x $_y + moveBotPt $_dname $_obj $_vx $_vy } \ $moveEdge { $::ArcherCore::application putString "This mode is not ready for edges." @@ -419,14 +419,19 @@ } -::itcl::body BotEditFrame::moveBotPt {_dname _obj _x _y} { +::itcl::body BotEditFrame::moveBotPt {_dname _obj _vx _vy} { set len [llength $mCurrentBotPoints] switch -- $len { 0 { $::ArcherCore::application putString "No points have been selected." } 1 { - $itk_option(-mged) pane_mouse_move_botpt $_dname $_obj [expr {$mCurrentBotPoints - 1}] $_x $_y + set i [expr {$mCurrentBotPoints - 1}] + set botpt [lindex $mPointList $i] + set vpt [$itk_option(-mged) pane_m2v_point $_dname $botpt] + set vz [lindex $vpt 2] + set mpt [$itk_option(-mged) pane_v2m_point $_dname [list $_vx $_vy $vz]] + $itk_option(-mged) move_botpt $_obj $i $mpt } default { $::ArcherCore::application putString "More than one point has been selected." This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |