ADN Club > Inventor API

Автоматический разрыв вида

(1/1)

niksasa:
Добрый день. В справке есть пример кода для создания разрыва вида

--- Код: ---Public Sub CreateBreakoperationInDrawingView()
    ' Set a reference to the drawing document.
    ' This assumes a drawing document is active.
    Dim oDrawDoc As DrawingDocument
    Set oDrawDoc = ThisApplication.ActiveDocument

    'Set a reference to the active sheet.
    Dim oSheet As Sheet
    Set oSheet = oDrawDoc.ActiveSheet

    ' Check to make sure a drawing view is selected.
    If Not TypeOf oDrawDoc.SelectSet.Item(1) Is DrawingView Then
        MsgBox "A drawing view must be selected."
        Exit Sub
    End If

    ' Set a reference to the selected drawing. This assumes
    ' that the selected view is not a draft view.
    Dim oDrawingView As DrawingView
    Set oDrawingView = oDrawDoc.SelectSet.Item(1)

    ' Set a reference to the center of the base view.
    Dim oCenter As Point2d
    Set oCenter = oDrawingView.Center

    ' Define the start point of the break
    Dim oStartPoint As Point2d
    Set oStartPoint = ThisApplication.TransientGeometry.CreatePoint2d(oCenter.X - 1, oCenter.Y)

    ' Define the end point of the break
    Dim oEndPoint As Point2d
    Set oEndPoint = ThisApplication.TransientGeometry.CreatePoint2d(oCenter.X + 1, oCenter.Y)

    Dim oBreakOperation As BreakOperation
    Set oBreakOperation = oDrawingView.BreakOperations.Add(kHorizontalBreakOrientation, oStartPoint, oEndPoint, kRectangularBreakStyle, 10)
End Sub
--- Конец кода ---
Пытаюсь его адаптировать под ilogic: убираю Sub, set, заключаю аргументы в круглые скобки, но правило не работает. Появляется сообщение (см. скриншот).
В чем проблема? 

niksasa:
В принципе, я могу запустить макрос из правила ilogic. Но в данном случае нужно всегда предварительно указывать сначала вид, а потом выполнять правило и за ним макрос. Я могу в макрос добавить kDrawingViewFilter для указания вида?

Владимир Ананьев:
Можешь.  Введи вызов метода Pick с соответствующим фиьтром.
Если с ошибкой не справишься, выкладывай ссылку на тестовую модель и чертеж с правилом iLogic.

niksasa:

--- Цитата: Владимир Ананьев от 21-10-2013, 14:48:12 ---Можешь.  Введи вызов метода Pick с соответствующим фиьтром.
Если с ошибкой не справишься, выкладывай ссылку на тестовую модель и чертеж с правилом iLogic.

--- Конец цитаты ---
Ура, всё получилось! :D
PS: жалко, что значение Debug нельзя поменять с помощью API.

Навигация

[0] Главная страница сообщений

Перейти к полной версии