1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33import sys
34from pathlib import Path
35import os
36
37import cadexchanger.CadExCore as cadex
38import cadexchanger.CadExView as view
39
40sys.path.append(os.path.abspath(os.path.dirname(Path(__file__).resolve()) + r"/../../"))
41
42def main(theSource: str, theDest: str):
43 anAbsolutePathToRuntimeKey = os.path.abspath(os.path.dirname(Path(__file__).resolve()) + r"/runtime_key.lic")
44 if not cadex.LicenseManager.CADExLicense_ActivateRuntimeKeyFromAbsolutePath(anAbsolutePathToRuntimeKey):
45 print("Failed to activate CAD Exchanger license.")
46 return 1
47
50
51
53 print("Failed to read the file " + theSource)
54 return 1
55
56
57 aFactory = view.ModelPrs_SceneNodeFactory()
58 aRootNode = aFactory.CreateGraph(aModel, cadex.ModelData_RM_Any)
59 aRootNode.SetDisplayMode(view.ModelPrs_DM_ShadedWithBoundaries)
60
61
62 aScene = view.ModelPrs_Scene()
63 aScene.AddRoot(aRootNode)
64
65
66 aViewPort = view.ModelPrs_OffscreenViewPort()
67 aViewPort.Resize(800, 600)
68 aViewPort.SetCameraProjectionType(view.ModelPrs_CPT_Perspective)
69 aViewPort.SetCameraPositionType(view.ModelPrs_CMT_Default)
71 aStyle = view.ModelPrs_BackgroundStyle(aBackgroundColor)
72 aViewPort.SetBackgroundStyle(aStyle)
73
74
75 if not aViewPort.AttachToScene(aScene):
76 print("Unable to attach viewport to scene")
77 return 1
78
79
80 aScene.Update()
81 aScene.Wait()
82
83
84 aViewPort.FitAll()
85
86
88 print("Failed to write the file " + theDest)
89 return 1
90
91 return 0
92
93if __name__ == "__main__":
94 if len(sys.argv) != 2:
95 print(" <input_file> is a name of the file to be read")
96 print(" <output_file> is a name of the PNG file to save the model")
97 sys.exit(1)
98
99 aSource = os.path.abspath(sys.argv[1])
100 aDest = os.path.abspath(sys.argv[2])
101
102 sys.exit(main(aSource, aDest))
Defines a Unicode (UTF-16) string wrapping a standard string.
Definition: Base_UTF16String.hxx:34
Defines an RGBA color (with alpha channel).
Definition: ModelData_Color.hxx:34
Provides CAD Exchanger data model.
Definition: ModelData_Model.hxx:41
Reads any format that CAD Exchanger can import.
Definition: ModelData_ModelReader.hxx:33