Stránka 1 z 1

Kombinace - odečtení těles

PříspěvekNapsal: úte 09. úno 2010 8:34:17
od swpavelapi
Níže můžete vidět makro pro vytvoření kombinace dvou těles, které jsou pojmenovány "Vysunout1" a "Vysunout2". Při vytváření těles nesmíte zapomenout zrušit sloučení těles. Operace odečtení je označena číslem 15902. Součet či průnik jsou tvořeny obdobně, avšak s jiným značením operace.
!!! Kdyby mi někdo dokázal poradit, jak měnit "Hlavní tělo" za "Tělo ke spojení" v již vytvořeném prvku kombinace, tedy jeho úpravou, byl bych moc rád !!! Díky a snad jsem někomu alespoň trochu pomohl...
-----------------------------------------------------------------------------------------------------------------------------

Dim swApp As Object

Dim Part As Object
Dim boolstatus As Boolean
Dim longstatus As Long, longwarnings As Long

Sub main()

Set swApp = Application.SldWorks

Set Part = swApp.ActiveDoc
boolstatus = Part.Extension.SelectByID2("Vysunout1", "SOLIDBODY", 0, 0, 0, False, 1, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Vysunout2", "SOLIDBODY", 0, 0, 0, True, 2, Nothing, 0)
Dim myFeature As Object
Set myFeature = Part.FeatureManager.InsertCombineFeature(15902, Nothing, Nothing)
End Sub
-->

swpavelapi

Příspěvky: 3
Registrován: pát 22. led 2010 7:40:30

* Soukromá zpráva

Re: Kombinace - odečtení těles

PříspěvekNapsal: úte 15. úno 2011 20:29:49
od Návštěvník
To které tělo bude Hlavni a které "ke spojení" určuje číslo v SelectByID2 (tučně), a nastavil bych obě hodnoty na "TRUE" (podtrženo)
boolstatus = Part.Extension.SelectByID2("Vysunout1", "SOLIDBODY", 0, 0, 0, True,1, Nothing, 0)
boolstatus = Part.Extension.SelectByID2("Vysunout2", "SOLIDBODY", 0, 0, 0, True, 2, Nothing, 0)
Set myFeature = Part.FeatureManager.InsertCombineFeature(15902, Nothing, Nothing)


z již vytvořené kombinace lze zjistit prvky - jejich pořadí odpovídá těm tučným číslům
Kód: Vybrat vše
prvky =myFeature.GetParents()
set prvek1=prvky(0)
set prvek2=prvky(1)

pak selectnu a vymazu tu kombinaci
Kód: Vybrat vše
myFeature.select false
Part.EditDelete


oba prvky se pak označí obráceně a kombinace se vytvoří znovu.

PS: Přímá editace mi zatím nejde, ale takhle by to mělo jít, když budu mít čas napíšu komplet makro a pošlu.