SurfaceCtrl_Demo: Now support Obj file (texture is not implemented yet)

git-svn-id: svn://ultimatepp.org/upp/trunk@14875 f0d560ea-af0d-0410-9eb7-867de7ffcac7
This commit is contained in:
xemuth 2020-08-22 15:55:41 +00:00
parent 066974c7e5
commit d175fbfb3f
3 changed files with 27 additions and 5 deletions

View file

@ -1,6 +1,6 @@
LAYOUT(SurfaceCtrl_DemoLayout, 480, 372)
ITEM(SurfaceCtrl, canvas, SetFrame(ThinInsetFrame()).HSizePosZ(4, 4).VSizePosZ(28, 0))
ITEM(Label, dv___1, SetLabel(t_("File (.stl):")).LeftPosZ(8, 52).TopPosZ(4, 19))
ITEM(SurfaceCtrl, canvas, SetFrame(ThinInsetFrame()).HSizePosZ(0, 0).VSizePosZ(28, 0))
ITEM(Label, dv___1, SetLabel(t_("File :")).LeftPosZ(8, 52).TopPosZ(4, 19))
ITEM(EditString, filename, HSizePosZ(60, 52).TopPosZ(4, 19))
ITEM(Button, butOpen, SetLabel(t_("Open")).RightPosZ(4, 44).TopPosZ(4, 20))
END_LAYOUT

View file

@ -10,5 +10,6 @@ file
mainconfig
"" = "GUI",
"" = "",
"" = "USEMALLOC";
"" = "USEMALLOC",
"" = "USEMALLOC GUI";

View file

@ -9,10 +9,31 @@ namespace Upp{
butOpen.WhenAction = [&] {
try {
Surface surf;
{
Object3D& obj = canvas.CreateObject();
obj.LoadModel(~filename);
surf = obj.GetSurface();
canvas.DeleteObject(obj.GetID());
}
Object3D& obj = canvas.CreateObject();
obj.LoadStl(~filename,Gray());
obj.GetTransform().Rotate(-90.0f,glm::vec3(1.0f,0.0f,0.0f));
obj.LoadSurface(surf, Green());
obj.GetTransform().Rotate(90.0f,glm::vec3(1.0f,0.0f,0.0f));
obj.GetTransform().SetScale(glm::vec3(0.1f,0.1f,0.1f));
obj.SetLineWidth(2.0f);
canvas.SetDefaultShader(obj);
/*
Object3D& obj2 = canvas.CreateObject();
obj2.LoadModel("C:\\Users\\hamon\\Downloads\\boat_v2_L2.123cb2c2d48f-7519-476c-8274-b5bcd578c751\\cube.obj");
obj2.GetTransform().Rotate(-90.0f,glm::vec3(1.0f,0.0f,0.0f));
//obj2.GetTransform().SetScale(glm::vec3(0.01f,0.01f,0.01f));
obj2.SetLineWidth(2.0f);
canvas.SetDefaultShader(obj2);
*/
canvas.Refresh();
} catch (Exc e) {
Exclamation(DeQtf(e));
}