Тема: Как вставить блок из файла?
Кто нибуть может подскажет как вставить блок из файла?
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → Delphi → Как вставить блок из файла?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Кто нибуть может подскажет как вставить блок из файла?
Господа я просто не поверу что никто не вставлял блок из другого файла,,! Ну подскажите хоть кто нибуть..!
AcadDoc.SendCommand
('-INSERT'+#13+'имя блока'+#13+insert_point+#13+'1'+#13+'1'+#13+'0'+#13);
Замечание - путь к блоку должен быть прописан в АКАДе, или давай полный путь.
insert_point - точка вставки, в текстовом виде (коорд. Х запятая коорд.Y). Использую ф-ю:
insert_point := PointToTxt(pt);
function PointToTxt(p: variant): string;
var n: byte;
a, b: string;
begin
a := FloatToStr(p[0]);
n := pos(',',a);
if n > 0 then a[n] := '.';
b := a;
a := FloatToStr(p[1]);
n := pos(',',a);
if n > 0 then a[n] := '.';
b := b + ',' + a;
Result := b;
end;
А по-моему вопрос стоял о другом :
"как вставил блок из файла?".
Т.е. есть файл, и в нем определен блок (хотя бы один), и требуется как-то вытащить из файла (не открывая его, даже через Design Center) этот блок и вставить в текущий рисунок.
Что значит "Не открывая его", для того что-бы прочитать информацию из файла его уже надо "открыть". Не важно какими средствами.
О давно сюда не заходил, поэтому не читал..,!
Хочу сказать следущее блок действительно должен быть определён внутри файла, но файл можно открывать.,!
AcadDoc.SendCommand
('-INSERT'+#13+'имя блока'+#13+insert_point+#13+'1'+#13+'1'+#13+'0'+#13);
Так я естественно пробовал.. ! дело в том что пишу программу на Delphi и в во время её работы ACAD должен быть скрыт а при посылки какой либо команды в командную строку сразу же вылезает окно автокада поэтому так не подходит. нкдо через AcadApp.ActiveDocument.ModelSpace.insertBlock... но так только если блоки находятся в текущем чертеже а мне надо чтобы блоки вставлялись из друго файла,,!
AcadApp.ActiveDocument.ModelSpace.InsertBlock(BeginPoint, 'VB_BRT.DWG', 1, 1, 1, 0, 0);
Вставляет без проблем
> Юрий
Подскажи пожалуйста почему при вставке блока твоим методом возникает ошибка, что-то там про Access Violation,
AcadApp имеет какой тип???
Дайте пожалуйста полный текст программы, как вставить блок из др. файла
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → Delphi → Как вставить блок из файла?
Форум работает на PunBB, при поддержке Informer Technologies, Inc