Невозможно загрузить файл STL в приложении WPF с помощью Eyeshot devDept
Я новичок в WPF и не могу загрузить файл.stl в мое приложение WPF с помощью EyeShot Devdept. Кто-нибудь может дать мне несколько советов?
Фрагмент кода:
Entity[] entList;
// loads the file contents in the entList array
singleViewportLayout1.ReadSTL("fileName.stl", out entList);
// adds the entList to the entities collection
singleViewportLayout1.Entities.AddRange(entList);
1 ответ
Да, вы, вероятно, не видите геометрию, но она уже загружена. Попробуйте позвонить ViewportLayout.ZoomFit()
а также ViewportLayout.Invalidate()
принести его внутрь усмотрения.
Лично мне нравится брать загруженный STL и TypeCast/Clone в сущность. Поскольку ссылки на объекты передаются, это безопасный способ создать новый объект и загрузить в него свой STL. Я добавил туда несколько вещей, чтобы облегчить просмотр в окне просмотра Eyshot. Регенерация объектов и аннулирование области просмотра - ключ к просмотру вашей сущности после того, как она была добавлена. Просто убедитесь, что у вас уже есть окно просмотра.:)
string Path_STL = "C:\\Users\\bdg\\Documents\\TestSTL.stl";
try
{
var currSTL = new ReadSTL(Path_STL);
currSTL.DoWork();
Entity ent = (Entity)currSTL.Entities[0].Clone();
ent.ColorMethod = colorMethodType.byLayer;
ent.LayerName = "TestLayer";
ent.EntityData = "TestSTL";
viewportLayout1.Entities.Add(ent);
viewportLayout1.Layers[ent.LayerName].Color = Color.Aquamarine;
viewportLayout1.Entities.Regen();
viewportLayout1.Invalidate();
viewportLayout1.ZoomFit();
}
catch (Exception ex)
{
Console.WriteLine("Load STL Failed: " + ex);
}