improved fix

This commit is contained in:
bouni
2022-12-28 13:31:41 +00:00
parent fd60d70cda
commit 4889e01401
2 changed files with 35 additions and 35 deletions

View File

@ -12,14 +12,23 @@
#import pcbnew;pcbnew.GetWizardsBackTrace()
__version__ = '1.2.2'
import datetime
import os
import sys
import sys, os
import pcbnew
import datetime
import wx
from pcbnew import *
# Make snap2grid compatible with KiCAD 6.99
if "6.99" in GetBuildVersion():
wxPoint = VECTOR2I
def getOrientation(fp):
o = fp.GetOrientation()
if "6.99" in GetBuildVersion():
return o.AsDegrees()
return o / 10
use_grid_origin = True
gridReference = 0.1 #1.27 #mm pcbnew.FromMM(1.0) #0.1mm
@ -101,9 +110,7 @@ class snap_to_grid( pcbnew.ActionPlugin ):
def Run(self):
#self.pcb = GetBoard()
import os
import sys
import sys,os
#mm_ius = 1000000.0
#_pcbnew_frame = [x for x in wx.GetTopLevelWindows() if x.GetTitle().lower().startswith('pcbnew')][0]
pcbnew_window = find_pcbnew_w()
@ -158,9 +165,6 @@ def snap2grid(gridSizeMM,use_grid):
#print(mpxOnG,mpyOnG)
locked=''
if not module.IsLocked():
if "6.99" in GetBuildVersion():
module.SetPosition(VECTOR2I(mpxOnG,mpyOnG))
else:
module.SetPosition(wxPoint(mpxOnG,mpyOnG))
else:
locked='LOCKED'
@ -184,9 +188,6 @@ def snap2grid(gridSizeMM,use_grid):
#print(mpxOnG,mpyOnG)
locked=''
if not module.IsLocked():
if "6.99" in GetBuildVersion():
module.SetPosition(VECTOR2I(mpxOnG,mpyOnG))
else:
module.SetPosition(wxPoint(mpxOnG,mpyOnG))
else:
locked='LOCKED'
@ -208,9 +209,6 @@ def snap2grid(gridSizeMM,use_grid):
mpyOnG = int(mpy/FromMM(gridSizeMM))*FromMM(gridSizeMM) #+ auxOrigin.y
locked=''
if not module.IsLocked():
if "6.99" in GetBuildVersion():
module.SetPosition(VECTOR2I(mpxOnG,mpyOnG))
else:
module.SetPosition(wxPoint(mpxOnG,mpyOnG))
else:
locked='LOCKED'
@ -222,10 +220,7 @@ def snap2grid(gridSizeMM,use_grid):
Value = str(module.GetValue())
Value=(Value[:17] + '..') if len(Value) > 19 else Value
Value="{0:<20}".format(Value)
if "6.99" in GetBuildVersion():
Rotation='{0:.1f}'.format((module.GetOrientation().AsDegrees()/10))
else:
Rotation='{0:.1f}'.format((module.GetOrientation()/10))
Rotation='{0:.1f}'.format(getOrientation(module))
Rotation="{0:>6}".format(Rotation)+' '
if module.GetLayer() == 0:
Layer=" top"

View File

@ -6,15 +6,25 @@
#
#
import datetime
import os
#import snaptogrid; import importlib; importlib.reload(snaptogrid)
import sys
import sys, os
import pcbnew
import datetime
import wx
from pcbnew import *
# Make snap2grid compatible with KiCAD 6.99
if "6.99" in GetBuildVersion():
wxPoint = VECTOR2I
def getOrientation(fp):
o = fp.GetOrientation()
if "6.99" in GetBuildVersion():
return o.AsDegrees()
return o / 10
use_grid_origin = True
gridReference = 0.127 #1.27 #mm pcbnew.FromMM(1.0) #0.1mm
@ -32,9 +42,7 @@ gridReference = 0.127 #1.27 #mm pcbnew.FromMM(1.0) #0.1mm
def Snap2Grid(gridSizeMM,use_grid_origin):
import os
import sys
import sys,os
#mm_ius = 1000000.0
pcb = pcbnew.GetBoard()
@ -51,9 +59,6 @@ def Snap2Grid(gridSizeMM,use_grid_origin):
mpxOnG = int(mpx/FromMM(gridSizeMM))*FromMM(gridSizeMM)+ gridOrigin.x
mpyOnG = int(mpy/FromMM(gridSizeMM))*FromMM(gridSizeMM)+ gridOrigin.y
print(mpxOnG,mpyOnG)
if "6.99" in GetBuildVersion():
module.SetPosition(VECTOR2I(mpxOnG,mpyOnG))
else:
module.SetPosition(wxPoint(mpxOnG,mpyOnG))
X_POS=str(module.GetPosition().x) # - gridOrigin.x)
#X_POS='{0:.4f}'.format(pcbnew.ToMM(module.GetPosition().x - gridOrigin.x ))
@ -77,7 +82,7 @@ def Snap2Grid(gridSizeMM,use_grid_origin):
Value = str(module.GetValue())
Value=(Value[:17] + '..') if len(Value) > 19 else Value
Value="{0:<20}".format(Value)
Rotation='{0:.1f}'.format((module.GetOrientation()/10))
Rotation='{0:.1f}'.format(getOrientation(module))
Rotation="{0:>6}".format(Rotation)+' '
if module.GetLayer() == 0:
Layer=" top"