*/}}

modelling_main.c 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. #include "la_5.h"
  2. extern LA MAIN;
  3. void la_DetachedScenePanel(laPanel* p){
  4. la_MakeDetachedProp(p, "tns.world.root_objects", "root");
  5. }
  6. void ScenePanel(laUiList *uil, laPropPack *This, laPropPack *DetachedProps, laColumn *UNUSED, int context){
  7. laColumn* c=laFirstColumn(uil);
  8. laUiItem* ui=laShowCanvas(uil,c,DetachedProps,"root",0,-1);
  9. laDefault3DViewOverlay(ui);
  10. }
  11. void DataPanel(laUiList *uil, laPropPack *This, laPropPack *DetachedProps, laColumn *UNUSED, int context){
  12. laColumn* c=laFirstColumn(uil);
  13. laShowItem(uil,c,0,"la.differences");
  14. laShowItem(uil,c,0,"tns.world");
  15. laShowItem(uil,c,0,"la");
  16. }
  17. int RegisterEverything(){
  18. laRegisterUiTemplate("panel_scene", "Scene", ScenePanel, la_DetachedScenePanel, 0);
  19. laRegisterUiTemplate("panel_data", "Data", DataPanel, 0, 0);
  20. tnsObject* s=tnsCreateRootObject("My Root");
  21. tnsObject* o=tnsCreateLight(s,"Sun",100,100,100,1,1);
  22. tnsVector3d target={0,0,0}, up={0,0,1};
  23. tnsLookAt(o,target,up);
  24. tnsObject* mo=tnsCreateMeshPlane(s,"Plane", 0,0,0, 10);
  25. //tnsMeshEnterEditMode(mo);
  26. //tnsMeshLeaveEditMode(mo);
  27. //
  28. //tnsCreateMeshPlane(s,"Plane", 0,0,10, 10);
  29. //tnsMeshEnterEditMode(mo);
  30. //tnsMeshLeaveEditMode(mo);
  31. }
  32. int main(int argc, char *argv[]){
  33. laGetReady();
  34. RegisterEverything();
  35. laRefreshUDFRegistries();
  36. laEnsureUserPreferences();
  37. laSaveProp("tns.world");
  38. laAddRootDBInst("tns");
  39. laWindow* w = laDesignWindow(-1,-1,800,600);
  40. laLayout* l = laDesignLayout(w, "Scene");
  41. laBlock* b = l->FirstBlock;
  42. laSplitBlockHorizon(b,0.7);
  43. laCreatePanel(b->B1, "panel_scene");
  44. laCreatePanel(b->B2, "panel_data");
  45. laStartWindow(w);
  46. laMainLoop();
  47. }