Разрыв вида Delphi

Автор krugerogk, 06.08.15, 20:45:15

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

krugerogk

Подскажите пожалуйста как создать Разрыв в текущем виде чертежа
API5 Delphi

не нашел ничего об этом ни на форуме, ни в книге Норсеева, ни в SDK

В API5, есть не всё, IBreakViewParam - интерфейс параметров разрыва вида - API7.

krugerogk

Пробую таким образом... На последней строчке Компас вылетает...
С API7 почти не работал, подскажите что не правильно.

var
   pKompasDocument2D : IKompasDocument2D;
   pViewsAndLayersManager : IViewsAndLayersManager;
   ppViews : IViews;
   ppView  : IView;
   ddoc2D : IDrawingDocument;
   BreakView : IBreakViewParam;
begin
Application.Handle := GetHWindow;
GetNewKompasAPI;
pKompasDocument2D := newKompasAPI.ActiveDocument As IKompasDocument2D;
pViewsAndLayersManager := pKompasDocument2D.ViewsAndLayersManager;
ppViews:=pViewsAndLayersManager.Views;
ppView := ppViews.ActiveView;

ddoc2D := kDoc As IDrawingDocument; // QueryInterface

BreakView.AddBreakLine(100,100,200,100,0);
end;

#3
Вы не получили интерфейс BreakView и он у Вас равен nil.

BreakView:=ppView as IBreakView;
BreakView.AddBreakLine(100,100,200,100,0);
+ Благодарностей: 1

krugerogk

Спасибо!!!! Получилось!!!


var
   pKompasDocument2D : IKompasDocument2D;
   pViewsAndLayersManager : IViewsAndLayersManager;
   ppViews : IViews;
   ppView  : IView;
   kdoc    : IKompasDocument;
   ddoc2D : IDrawingDocument;
   BreakView : IBreakViewParam;

begin
Application.Handle := GetHWindow;
GetNewKompasAPI;
pKompasDocument2D := newKompasAPI.ActiveDocument As IKompasDocument2D;
pViewsAndLayersManager := pKompasDocument2D.ViewsAndLayersManager;
ppViews:=pViewsAndLayersManager.Views;
ppView := ppViews.ViewByNumber[2];
BreakView:=ppView as IBreakViewParam;
BreakView.AddBreakLine(50,1,150,1,0);
ppView.Update;