Vítejte !   Přihlášení | Registrace
Hlavní menu
CATIA fórum.cz
Novinky
Seriál CATIA
Obecně o CAD
Novinky ze světa DS
Makra pro CATIA V5
Diskuse
Vytvořit téma
Koncepty
Seznam oblíbených
Soukromé zprávy
Pravidla
Live CHAT
VIP žádost
Základy Catia
Ke stažení
Doporučujeme
Pracovní příležitosti
Reklama a kampaně
O fóru
Nápověda

spline počáteční a koncový body

Kompletní přehled příspěvků v tématu spline počáteční a koncový body řazený podle data jejich publikace na fóru.

UživatelPříspěvek
Jirka

Poslat zprávu | Profil
Datum: 13.10. 2015 | Zobrazeno: 9332x
Konfigurace CATIA: v5.21

Text dotazu:
Dobrý den,
chtěl bych se zeptat, zda existuje způsob zjištění pomoci makra po kliknutí na spline počáteční a koncový bod?

Andrej Verný

Poslat zprávu | Profil
[#5399] | Publikováno: 13.10. 2015 - 11:13
Ano , dá sa to pomocou funkcie GetPointPosition.


Dim oPunkt As Long
oPunkt = hybridShapeSpline1.GetPointPosition(oRefpunkt)
Jirka

Poslat zprávu | Profil
[#5400] | Publikováno: 13.10. 2015 - 15:38
Dobry den, mockrát děkuji za odpověď. Jen moc nechápu co mám chápat pod "oRefpunkt". Jsem začátečník takže... Byl by možný nějaký příklad? Například mám dva body(point.1 a point.2 propojeno spline.1). Pokud ne děkuji alespoň za směr, kudy se mám vést.
Andrej Verný

Poslat zprávu | Profil
[#5402] | Publikováno: 13.10. 2015 - 16:28
"orefPunkt" som tam dal naschvál aby bolo jasné že sa má jednať o referenciu bodu a nie o bod samotný, pretože metóda, alebo funkcia GetPointPosition pracuje s referenciou.

Tak tu je narýchlo spísane niečo čo Vám pomože sa ďalej odpichnúť.


Option Explicit
Sub CATMAin()
'****PODMIENKY****
'Treba si vytvorit part
'V nom vytvorit Geometricky Set s nazvom Geometrical Set.1
'Vytvorit zopar bodov (v 3D) a potom spline
'Pozor Spline sa musi volat Spline.1 !!!
'----------------------------------------------
'Trocha so si pomohol s resolution object kvoli lenivosti

'---- Begin resolution script For object : Spline.1
Dim partDocument1 As PartDocument
Set partDocument1 = CATIA.ActiveDocument
Dim part1 As Part
Set part1 = partDocument1.Part
Dim hybridBodies1 As HybridBodies
Set hybridBodies1 = part1.HybridBodies
Dim hybridBody1 As HybridBody
Set hybridBody1 = hybridBodies1.Item("Geometrical Set.1")
Dim hybridShapes1 As HybridShapes
Set hybridShapes1 = hybridBody1.HybridShapes
Dim hybridShapeSpline1 As HybridShapeSpline
Set hybridShapeSpline1 = hybridShapes1.Item("Spline.1")
'---- End resolution script
Dim oPoint As Point ' Definujeme si nAs Bod o ktorom zistime info
Dim oRefpunkt As Reference ' Potrebujeme si vytvorit referenciu z bodu, kvoli metode GetpointPosition
Dim oPocetbodov, i, oPoradiebodu As Long
oPocetbodov = hybridShapeSpline1.GetNbControlPoint ' Hodi nam cislo z kolkych bodov
' sa sklada nasa Spline.1

'Teraz si prejdeme bod po bode z ktorych sa slada spline
For i = 1 To oPocetbodov
Set oPoint = hybridShapeSpline1.Parent.Item(i) ' nastavime BOD
Set oRefpunkt = oPoint ' nastavime referenciu
oPoradiebodu = hybridShapeSpline1.GetPointPosition(oRefpunkt) ' tuna mame poradie bodu
MsgBox "Bod s nazvom " & oPoint.Name & vbNewLine & "ma poradove cislo " & oPoradiebodu
Next i
' No a potom uz len najvyssie cislo z premennej oPoradiebodu je posledny bod na spline
' a analogicky poradove cislo jeden bude nAs prvy bod.
End Sub
Ing Jan Cinert

Poslat zprávu | Profil
[#5401] | Publikováno: 13.10. 2015 - 16:47
Dobrý den,

k tomu budete potřebovat zjistit počet bodů, kterými Spline prochází a potom zjistit první a poslední.

Objekt Spline musíte (pokud ji chcete vybírat myší) získat pomocí výběru.

Dim ObjSel(0)
ObjSel(0) = "Curve"
oSelection.SelectElement2 ObjSel, "Vyberte spline...", false

Set oSpline
Jirka

Poslat zprávu | Profil
[#5403] | Publikováno: 13.10. 2015 - 17:02
Mockrát děkuji. Od toho se určitě odpíchnu. Dekuji moc za objasnění :)


Uživatel nepřihlášen

Pro zobrazení obsahu stránky / provedení akce (vytvoření nového téma, napsání odpovědi do diskuse apod.) musíte být přihlášeni.