|
23 | 23 | # |
24 | 24 | # How it works: |
25 | 25 | # |
26 | | -# |
27 | | -# |
28 | | -#Qt Import |
29 | | -# |
30 | | -from PyQt4 import QtCore, QtGui |
31 | | - |
32 | | -import math, string |
| 26 | +import logging |
33 | 27 | # |
34 | 28 | #Kernel Import |
35 | 29 | # |
36 | | -from Kernel.initsetting import SNAP_POINT_ARRAY, ACTIVE_SNAP_POINT, ACTIVE_SNAP_LIST |
37 | | -from Kernel.GeoEntity.point import Point |
38 | | -from Kernel.GeoUtil.geolib import Vector |
39 | 30 | from Kernel.GeoUtil.intersection import * |
40 | 31 | from Kernel.pycadevent import * |
41 | 32 | from Kernel.exception import * |
|
44 | 35 | # Interface Import |
45 | 36 | # |
46 | 37 | from Interface.cadinitsetting import RESTART_COMMAND_OPTION |
47 | | -from Interface.Entity.base import BaseEntity |
48 | 38 | from Interface.Dialogs.property import Property |
49 | 39 | from Interface.Preview.factory import * |
50 | 40 | from Interface.DrawingHelper.snap import * |
@@ -114,14 +104,16 @@ def addMauseEvent(self, point, entity,distance=None,angle=None , text=None, forc |
114 | 104 | # |
115 | 105 | # Compute snap distance and position force |
116 | 106 | # |
117 | | - #print "log: addMauseEvent", str(point), str(entity), str(distance), str(angle), str(text), str(force) |
| 107 | + logging.debug("log: addMauseEvent [%s][%s][%s][%s][%s][%s]"%( str(point), str(entity), str(distance), str(angle), str(text), str(force))) |
118 | 108 | if correct!=None: |
119 | 109 | snap=self.scene.snappingPoint.getSnapPoint(point,self.getEntity(point)) |
120 | 110 | snap=self.correctPositionForcedDirection(snap, self._scene.forceDirection) |
121 | 111 | else: |
122 | 112 | snap=point |
| 113 | + |
123 | 114 | if angle==None: |
124 | 115 | angle=self.calculateAngle(snap) |
| 116 | + |
125 | 117 | if distance==None: |
126 | 118 | distance=self.getDistance(snap) |
127 | 119 | # |
@@ -212,25 +204,28 @@ def applyCommand(self): |
212 | 204 | self.scene.hideSnapMarks() |
213 | 205 | try: |
214 | 206 | self.kernelCommand.applyCommand() |
215 | | - if RESTART_COMMAND_OPTION: |
216 | | - self.restartCommand() |
217 | | - self.updateInput(self.kernelCommand.activeMessage) |
218 | | - self.scene.clearSelection() |
219 | | - self.scene.fromPoint=None |
220 | | - self.scene.isGuided=None |
221 | | - self.scene.isGuideLocked=None |
222 | | - self.scene.GuideHandler.reset() |
| 207 | + if RESTART_COMMAND_OPTION and self.kernelCommand.autorestart: |
| 208 | + self.restartCommand() |
| 209 | + self.updateInput(self.kernelCommand.activeMessage) |
| 210 | + self.scene.clearSelection() |
| 211 | + self.scene.fromPoint=None |
| 212 | + self.scene.isGuided=None |
| 213 | + self.scene.isGuideLocked=None |
| 214 | + self.scene.GuideHandler.reset() |
223 | 215 | else: |
224 | 216 | self.scene.cancelCommand() |
225 | 217 | self.updateInput("Ready") |
| 218 | + self.scene.clearPreview() |
| 219 | + self.removePreviewItemToTheScene() |
226 | 220 | self=None |
| 221 | + return |
227 | 222 | self.scene.clearPreview() |
| 223 | + self.removePreviewItemToTheScene() |
228 | 224 | except Exception as e: |
229 | 225 | print type(e) # the exception instance |
230 | 226 | print "ICommand applyCommand Errore ", str(e) |
231 | 227 | self.restartCommand() |
232 | | - self.removePreviewItemToTheScene() |
233 | | - return |
| 228 | + |
234 | 229 |
|
235 | 230 | def getEntity(self, position): |
236 | 231 | """ |
@@ -283,14 +278,16 @@ def calculateAngle(self, snap): |
283 | 278 | """ |
284 | 279 | if snap==None: |
285 | 280 | return None |
286 | | - |
287 | | - for snapPoint in self._snap: |
288 | | - print "angle ",self._snap[snapPoint],snap |
289 | | - v=Vector(self._snap[snapPoint],snap ) |
290 | | - return v.absAng |
291 | | - else: |
| 281 | + try: |
| 282 | + for snapPoint in self._snap: |
| 283 | + print "angle ",self._snap[snapPoint],snap |
| 284 | + v=Vector(self._snap[snapPoint],snap ) |
| 285 | + return v.absAng |
| 286 | + else: |
| 287 | + return None |
| 288 | + except EntityMissing: |
292 | 289 | return None |
293 | | - |
| 290 | + |
294 | 291 | def decodeText(self, value): |
295 | 292 | """ |
296 | 293 | encode the text given from the user |
|
0 commit comments