pavelstyl
28.06.2023, 08:45
Dobrý den, ve výkrese ve skice potřebuji po uživateli, aby vybrat entitu (čáru).To umím udělat pomocí [CODE]Dim Curve As DrawingCurveSegment = ThisApplication.CommandManager.Pick(SelectionFilterEnum.kDrawingCurveSegmentFilter, "Select first line to align")[/CODE]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ěkujiPavel Štyl
Vladimír Michl
28.06.2023, 12:29
Jednoduchá cesta asi nebude, ale mělo by zafungovat získání souřadnice kliknutí přes "myšovou" událost:[CODE] Dim oIntEv As InteractionEvents = ThisApplication.CommandManager.CreateInteractionEvents Dim oMouseEv As MouseEvents = oIntEv.MouseEvents AddHandler oMouseEv.OnMouseClick ,AddressOf oMouseEv_OnMouseClick oIntEv.StartSub 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[/CODE]A poté výběr pomocí souřadnice bodu:[CODE]oSheet.FindUsingPoint(PointPos)[/CODE]