SideType replaces Midplane/Symmetric for FC 1.1.1 compatibility
This commit is contained in:
@@ -0,0 +1,24 @@
|
|||||||
|
with open("src/freecad_mcp/tools/partdesign.py", "r") as f:
|
||||||
|
c = f.read()
|
||||||
|
|
||||||
|
# Fix pad_sketch: Midplane -> SideType
|
||||||
|
old = '# FC 1.1.1: use Midplane instead of Symmetric\nif "Midplane" in pad.PropertiesList:\n pad.Midplane = {symmetric}\nelif "Symmetric" in pad.PropertiesList:\n pad.Symmetric = {symmetric}'
|
||||||
|
new = '# FC 1.1.1: SideType replaces Midplane/Symmetric\nif "SideType" in pad.PropertiesList:\n pad.SideType = "Symmetric" if {symmetric} else "One side"\nelif "Midplane" in pad.PropertiesList:\n pad.Midplane = {symmetric}\nelif "Symmetric" in pad.PropertiesList:\n pad.Symmetric = {symmetric}'
|
||||||
|
c = c.replace(old, new)
|
||||||
|
print("Pad: SideType applied" if old not in c else "Pad NOT found")
|
||||||
|
|
||||||
|
# Fix revolution_sketch
|
||||||
|
old2 = '# FC 1.1.1: use Midplane instead of Symmetric\nif "Midplane" in rev.PropertiesList:\n rev.Midplane = {symmetric}\nelif "Symmetric" in rev.PropertiesList:\n rev.Symmetric = {symmetric}'
|
||||||
|
new2 = '# FC 1.1.1: SideType replaces Midplane/Symmetric\nif "SideType" in rev.PropertiesList:\n rev.SideType = "Symmetric" if {symmetric} else "One side"\nelif "Midplane" in rev.PropertiesList:\n rev.Midplane = {symmetric}\nelif "Symmetric" in rev.PropertiesList:\n rev.Symmetric = {symmetric}'
|
||||||
|
c = c.replace(old2, new2)
|
||||||
|
print("Rev: SideType applied" if old2 not in c else "Rev NOT found")
|
||||||
|
|
||||||
|
# Fix groove_sketch
|
||||||
|
old3 = '# FC 1.1.1: use Midplane instead of Symmetric\nif "Midplane" in groove.PropertiesList:\n groove.Midplane = {symmetric}\nelif "Symmetric" in groove.PropertiesList:\n groove.Symmetric = {symmetric}'
|
||||||
|
new3 = '# FC 1.1.1: SideType replaces Midplane/Symmetric\nif "SideType" in groove.PropertiesList:\n groove.SideType = "Symmetric" if {symmetric} else "One side"\nelif "Midplane" in groove.PropertiesList:\n groove.Midplane = {symmetric}\nelif "Symmetric" in groove.PropertiesList:\n groove.Symmetric = {symmetric}'
|
||||||
|
c = c.replace(old3, new3)
|
||||||
|
print("Groove: SideType applied" if old3 not in c else "Groove NOT found")
|
||||||
|
|
||||||
|
with open("src/freecad_mcp/tools/partdesign.py", "w") as f:
|
||||||
|
f.write(c)
|
||||||
|
print("Done")
|
||||||
@@ -289,8 +289,10 @@ pad_name = {name!r} or "Pad"
|
|||||||
pad = body.newObject("PartDesign::Pad", pad_name)
|
pad = body.newObject("PartDesign::Pad", pad_name)
|
||||||
pad.Profile = sketch
|
pad.Profile = sketch
|
||||||
pad.Length = {length}
|
pad.Length = {length}
|
||||||
# FC 1.1.1: use Midplane instead of Symmetric
|
# FC 1.1.1: SideType replaces Midplane/Symmetric
|
||||||
if "Midplane" in pad.PropertiesList:
|
if "SideType" in pad.PropertiesList:
|
||||||
|
pad.SideType = "Symmetric" if {symmetric} else "One side"
|
||||||
|
elif "Midplane" in pad.PropertiesList:
|
||||||
pad.Midplane = {symmetric}
|
pad.Midplane = {symmetric}
|
||||||
elif "Symmetric" in pad.PropertiesList:
|
elif "Symmetric" in pad.PropertiesList:
|
||||||
pad.Symmetric = {symmetric}
|
pad.Symmetric = {symmetric}
|
||||||
@@ -565,8 +567,10 @@ rev_name = {name!r} or "Revolution"
|
|||||||
rev = body.newObject("PartDesign::Revolution", rev_name)
|
rev = body.newObject("PartDesign::Revolution", rev_name)
|
||||||
rev.Profile = sketch
|
rev.Profile = sketch
|
||||||
rev.Angle = {angle}
|
rev.Angle = {angle}
|
||||||
# FC 1.1.1: use Midplane instead of Symmetric
|
# FC 1.1.1: SideType replaces Midplane/Symmetric
|
||||||
if "Midplane" in rev.PropertiesList:
|
if "SideType" in rev.PropertiesList:
|
||||||
|
rev.SideType = "Symmetric" if {symmetric} else "One side"
|
||||||
|
elif "Midplane" in rev.PropertiesList:
|
||||||
rev.Midplane = {symmetric}
|
rev.Midplane = {symmetric}
|
||||||
elif "Symmetric" in rev.PropertiesList:
|
elif "Symmetric" in rev.PropertiesList:
|
||||||
rev.Symmetric = {symmetric}
|
rev.Symmetric = {symmetric}
|
||||||
@@ -653,8 +657,10 @@ groove_name = {name!r} or "Groove"
|
|||||||
groove = body.newObject("PartDesign::Groove", groove_name)
|
groove = body.newObject("PartDesign::Groove", groove_name)
|
||||||
groove.Profile = sketch
|
groove.Profile = sketch
|
||||||
groove.Angle = {angle}
|
groove.Angle = {angle}
|
||||||
# FC 1.1.1: use Midplane instead of Symmetric
|
# FC 1.1.1: SideType replaces Midplane/Symmetric
|
||||||
if "Midplane" in groove.PropertiesList:
|
if "SideType" in groove.PropertiesList:
|
||||||
|
groove.SideType = "Symmetric" if {symmetric} else "One side"
|
||||||
|
elif "Midplane" in groove.PropertiesList:
|
||||||
groove.Midplane = {symmetric}
|
groove.Midplane = {symmetric}
|
||||||
elif "Symmetric" in groove.PropertiesList:
|
elif "Symmetric" in groove.PropertiesList:
|
||||||
groove.Symmetric = {symmetric}
|
groove.Symmetric = {symmetric}
|
||||||
|
|||||||
Reference in New Issue
Block a user