Реализовано 2 отрисовщика моделей конструкций и стеклопакетов:
- IawWindowModelPainter;
- IawFillingModelPainter.
с различными режимами выносок и возможностью задания шрифтов.
Пример использования отрисовки миниатюры стеклопакета в файл:
var
P: IawFillingModelPainter;
M, F: string;
S: TStream;
begin
P := CreateFillingModelPainter; // создание отрисовщика
P.DrawParams.Colored := True; // отрисовка с учётом цветов
P.DrawParams.Dimensions.Bounds := True; // габаритые размерные линии
P.DrawParams.Dimensions.SidesProjection := True; // размерные линии проекций сторон на оси
P.DrawParams.Dimensions.SidesLength := True; // размерные линии длин сторон
P.DrawParams.DimensionFont.Name := 'Arial'; // гарнитура шрифта размерных линий
P.DrawParams.DimensionFont.Size := 8; // размер шрифта размерных линий
P.DrawParams.DimensionFont.Color := clGreen; // цвет размерных линий
P.DrawParams.MarkFilling := True; // вывод маркировки артикула
M := QueryValue('select packinfo from modelfillings where packinfo is not null', Empty); // читаем первый стеклопакет первой конструкции
F := 'c:\temp\glass.png';
S := TFileStream.Create(F, fmCreate); // создаём файловый поток
try
P.WriteImageToStream(M, CreateIcmStreamAdapter(S), mitPNG, 300, 300); // пишем в поток картинку
finally
S.Free;
end;
ShellExecute(F); // открываем штатными средствами ОС
end;