Vytisknout stránku | Zavřít okno

Inventor - výběr entity

Vytištěno z: CAD Fórum
Kategorie: Autodesk - stavebnictví, strojírenství, CAD/GIS
Název fóra: CAD programování
Popis fóra: Otázky programování - nadstavby a utility pro CAD a GIS aplikace Autodesk (VBA, AutoLISP, ARX/C++, .Net, JavaScript, Python, MEL...)
URL: https://www.cadforum.cz/forum/forum_posts.asp?TID=34443
Datum vytištění: 09.pro.2025 v 09:44


Téma: Inventor - výběr entity
Odeslal: pavelstyl
Předmět: Inventor - výběr entity
Datum odeslání: 28.čer.2023 v 08:45
Dobrý den,
 ve výkrese ve skice potřebuji po uživateli, aby vybrat entitu (čáru).
To umím udělat pomocí 
Dim Curve As DrawingCurveSegment  = ThisApplication.CommandManager.Pick(SelectionFilterEnum.kDrawingCurveSegmentFilter, "Select first line to align")

Dá se také zjistit poloha bodu, kam uživatel ukázal?
Potřebuji vybrat jak entitu, tak i znát souřadnice bodu výběru.
AutoCAD na to má lispovskou funkci (entsel), která vrátí bod výběru i entitu.
Je něco takového i v API Inventoru?

Děkuji
Pavel Štyl



Odpovědi:
Odeslal: Vladimír Michl
Datum odeslání: 28.čer.2023 v 12:29
Jednoduchá cesta asi nebude, ale mělo by zafungovat získání souřadnice kliknutí přes "myšovou" událost:

Dim oIntEv As InteractionEvents = ThisApplication.CommandManager.CreateInteractionEvents
Dim oMouseEv As MouseEvents = oIntEv.MouseEvents
AddHandler oMouseEv.OnMouseClick  ,AddressOf oMouseEv_OnMouseClick 
oIntEv.Start

Sub oMouseEv_OnMouseClick(oMBtn As MouseButtonEnum, oShiftState As ShiftStateEnum, oMPos As Inventor.Point, oViewPos As Point2d, oView As Inventor.View)
   MsgBox("Model Position = " & oMPos.X & " cm x " & oMPos.Y & " cm (from model origin)" & vbCrLf & _
  "View Position = " & oViewPos.X & " x " & oViewPos.Y & " (from top left corner of view)", , "MOUSE POSITION")
End Sub


A poté výběr pomocí souřadnice bodu:
oSheet.FindUsingPoint(PointPos)



-------------
Vladimír Michl (moderátor)
ARKANCE CZ - https://arkance.world - arkance.world
(podpora viz helpdesk.arkance-systems.cz)


Odeslal: pavelstyl
Datum odeslání: 28.čer.2023 v 12:48
Děkuji vyzkouším



Vytisknout stránku | Zavřít okno