Diskuzní fórum, poradna
CAD diskuze, rady, výměna zkušeností |
Veřejné diskuzní fórum k CAD aplikacím - ptejte se na libovolné otázky týkající se oboru CAx, podělte se o vaše znalosti a zkušenosti s programy AutoCAD, Inventor, Revit, Fusion 360, 3ds Max a s dalšími CAD aplikacemi.
Zaregistrujte se nebo se přihlašte a zašlete váš příspěvek do odpovídajícího fóra. Viz další informace o CAD Fóru. Nechcete se registrovat? Zeptejte se v naší Facebook poradně.
Fórum nenahrazuje technický support firmy Arkance Systems (CAD Studio) - přímá podpora pro zákazníky funguje na helpdesk.cadstudio.cz
VBA a 3dpolyline |
Odpovědět | archiv |
Autor | |
predcis
Nováček Přihlášen: 18.srp.2005 Lokalita: Slovensko Používám: AutoCAD® Map 3D 2013 Stav: Offline Bodů: 14 |
Téma: VBA a 3dpolyline Zasláno: 21.zář.2005 v 11:43 |
Dobry den,
mam este jeden problem, ktory som sice vyriesil, ale sposobom, ktory je podla mna dost divny. Nemam hlbsie znalosti VB, preto priliz nepoznam problematiku dynamickych poli (s C-ckom to nema nic podobneho). V podstate ide o to, ze som nenasiel nejaku "vstavanu" funkciu, ktora by mi povedala kolko vrcholov ma 3d krivka, ktoru vyberiem. Tak som to vyriesil cez chybu, co sa mi zda byt pritiahnute za vlasy. Vie mi prosim niekto poradit, ako sa to da urobit inteligentnejsie ? Dakujem. Tu je kod : Public poly As Acad3DPolyline Public entita As AcadEntity Public prepinac As Boolean Private Sub Vyber3Dpoly_Click() Dim bod(2) As Double Me.Hide AutoCAD.ActiveDocument.Utility.GetEntity entita, bod, "Vyber 3Dpolyline ! : " 'MsgBox entita.ObjectName If entita.ObjectName = "AcDb3dPolyline" Then Set poly = entita prepinac = True Else MsgBox "Nevybral si 3Dpolyline !" End If 'MsgBox poly.ObjectName Me.Show End Sub Private Sub Vykreslit_Click() Dim pocetVrcholov As Long Dim bod1 As Variant Dim bod2 As Variant pocetVrcholov = 0 'zistenie poctu vrcholov On Error GoTo vrcholy Do While 1 > 0 'nekonecny cyklus bod1 = poly.Coordinate(pocetVrcholov) ' ak nastane chyba, tolko vrcholov je (indexy su potom pocet - 1) pocetVrcholov = pocetVrcholov + 1 'neexistuje nieco ako pocetVrcholov++ ? Loop 'koniec nekonecneho cyklu vrcholy: 'MsgBox "Pocet vrcholov > " & pocetVrcholov ... a pokracuje dalsi kod. |
|
Vladimír Michl
Profil člena
Odeslat soukromou zprávu
Najít příspěvky člena
Navštívit stránky člena
Přidat do seznamu známých
Moderátor Arkance Systems Přihlášen: 09.zář.2004 Lokalita: ČR (JČ) Používám: Dodáváme produkty Autodesk Stav: Offline Bodů: 21490 |
Zasláno: 21.zář.2005 v 12:09 |
není tam náhodou kolekce Coordinates ? (nezkoušeno)
|
|
Seiner
CAD/BIM manager Přihlášen: 01.říj.2004 Lokalita: ČR (PA) Používám: Mechanical 2017, Inventor 2017 a starší Stav: Offline Bodů: 1662 |
Zasláno: 21.zář.2005 v 12:13 |
a co UBound (jmeno_pole[,č_rozm]) ?
|
|
predcis
Nováček Přihlášen: 18.srp.2005 Lokalita: Slovensko Používám: AutoCAD® Map 3D 2013 Stav: Offline Bodů: 14 |
Zasláno: 21.zář.2005 v 12:48 |
Dakujem, riesenie som nasiel nasledovne :
pocetVrcholov = (UBound(poly.coordinates)+1)/3 |
|
Pro technickou podporu CAD
kontaktujte Helpdesk
Odpovědět | |
Přejít na fórum | Oprávnění fóra Nemůžete vytvářet nová témata v tomto fóru Nemůžete odpovídat na témata v tomto fóru Nemůžete vymazávat vaše příspěvky v tomto fóru Nemůžete upravovat vaše příspěvky v tomto fóru Nemůžete vytvářet ankety v tomto fóru Nemůžete hlasovat v anketách v tomto fóru |
Stránka byla vygenerována za 0,507 sekund.