Перейти к публикации

API Solid Edge


AlexPS

Рекомендованные сообщения

Всем привет. У меня следующая проблема, нужна программа, которая бы создавала какую-либо делать в Solid Edge, исопльзуя его API. В SDK к Solid'у все примеры на VB. А я в нем просто ноль. Сколько ни пытался, разобраться никак не могу. :wallbash:

Может кто-нибудь знает где можно взять информацию/примеры по использованию API Solid Edge на Delphi.

Заранее спасибо.

Ссылка на сообщение
Поделиться на других сайтах
  • 3 недели спустя...


вот пример. запускает солид среду черчения и рисует линию. все остальное берётся из

примеров VB

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, OleServer, ComObj;

type

TForm1 = class(TForm)

Button1: TButton;

Label1: TLabel;

procedure Button1Click(Sender: TObject);

procedure GoodByeSolid(Sender: TObject; var Action: TCloseAction);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

SolidEdge : OleVariant; // сам Solid

DraftDoc : OleVariant; // среда чертеж

objSheet : OleVariant; // активный лист

objLines2d : OleVariant; // графические примитивы

objLine1 : OleVariant;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

// делаем так, что бы наша форма отображалась всегда поверх окна Solid Edge

FormStyle:= fsStayOnTop;

try

// проверяю нет ли активного Solida , среды чертёж , активного листа

SolidEdge := GetActiveOleObject('SolidEdge.Application');

DraftDoc := GetActiveOleObject('SolidEdgeDraft.DraftDocument');

objSheet := GetActiveOleObject('SolidEdgeDraft.Sheet');

Label1.Caption := 'SolidEdge уже запущен';

except

try

// если ничего нет то загружаю Solid среда чертёж

SolidEdge := CreateOleObject('SolidEdge.Application');

DraftDoc := SolidEdge.Documents.Add('SolidEdge.DraftDocument');

objSheet := DraftDoc.ActiveSheet;

SolidEdge.Visible := True;

Label1.Caption := 'SolidEdge запустился';

// рисую примитивы

objLines2d := objSheet.Lines2d;

objLine1 := objLines2d.AddBy2Points(X1:=0.05, Y1:=0.05, X2:=0.1, Y2:=0.05);

except

Label1.Caption := 'SolidEdge нету...';

end;

end;

end;

procedure TForm1.GoodByeSolid(Sender: TObject; var Action: TCloseAction);

begin

// при закрытии нашей программы закроем Solid Edge

SolidEdge.Application.Quit

end;

end.

startSolidEdgeDraftlinedrawing.rar

Ссылка на сообщение
Поделиться на других сайтах
  • 9 месяцев спустя...

А что такое API? Мне интересно написание макросов для SE ST в Visual Basic. Кто-нибудь может привести простейшие примеры кода? Спасибо.

Ссылка на сообщение
Поделиться на других сайтах

А что такое API? Мне интересно написание макросов для SE ST в Visual Basic. Кто-нибудь может привести простейшие примеры кода? Спасибо.

В директории \Solid Edge ST\Custom есть макро с исходниками. В \\Solid Edge ST\SDK есть также примеры. И в хелпе есть programming with solid edge там тоже есть примеры.
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...