Skip to content

Commit 1d9a307

Browse files
committed
change file extension to pvc2
1 parent d4a60d1 commit 1d9a307

5 files changed

+3418
-0
lines changed
Lines changed: 256 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,256 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<COLLADA xmlns:xsd="http://www.w3.org/2001/XMLSchema"
3+
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4+
xmlns:pv="http://www.example.com/pvcollada"
5+
version="1.5.0" xmlns="http://www.collada.org/2008/03/COLLADASchema">
6+
<asset>
7+
<contributor>
8+
<author>PVsyst</author>
9+
<comments>First PVC 2.0 sample file : 1 terrain and 3 tables, all based on the same model. No electrical components</comments>
10+
</contributor>
11+
<coverage>
12+
<geographic_location>
13+
<longitude>15.3</longitude>
14+
<latitude>10.1</latitude>
15+
<altitude mode="absolute">150</altitude>
16+
</geographic_location>
17+
</coverage>
18+
<created>2024-06-06T13:32:31Z</created>
19+
<modified>2025-09-16T10:12:18Z</modified>
20+
<unit meter="0.01" name="cm" />
21+
<up_axis>Z_UP</up_axis>
22+
<extra>
23+
<technique profile="PVCollada-2.0">
24+
<!-- software tag -->
25+
<pv:software>
26+
<pv:source>Helios 3D</pv:source>
27+
<pv:target>PVsyst</pv:target>
28+
</pv:software>
29+
<!-- project tag -->
30+
<pv:project>
31+
<pv:name>First example</pv:name>
32+
</pv:project>
33+
<!-- components tag -->
34+
<pv:components>
35+
<!-- List of modules -->
36+
<pv:modules>
37+
<!-- module tag, would usually contain a link to a PAN file or its content
38+
as CDATA -->
39+
<pv:module id="ModuleModel1">
40+
<pv:manufacturer>Generic</pv:manufacturer>
41+
<pv:name>Generic 300W bifacial</pv:name>
42+
<pv:module_type>bifacial</pv:module_type>
43+
<pv:nom_power>300</pv:nom_power>
44+
<pv:length>1992</pv:length>
45+
<pv:width>1000</pv:width>
46+
<pv:depth>6</pv:depth>
47+
</pv:module>
48+
</pv:modules>
49+
</pv:components>
50+
</technique>
51+
</extra>
52+
</asset>
53+
<library_materials>
54+
<material id="Material1" name="Dummy Material">
55+
<instance_effect url="#Material1EffectId" />
56+
</material>
57+
</library_materials>
58+
<library_effects>
59+
<effect id="Material1EffectId" name="Dummy Material Effect">
60+
<profile_COMMON>
61+
<technique sid="standard">
62+
<lambert>
63+
<emission>
64+
<color sid="emission">0.000000 0.000000 0.000000 1.000000</color>
65+
</emission>
66+
<ambient>
67+
<color sid="ambient">0.200000 0.200000 0.200000 1.000000</color>
68+
</ambient>
69+
<diffuse>
70+
<color sid="diffuse">0.250000 0.500000 0.000000 1.000000</color>
71+
</diffuse>
72+
<transparent opaque="RGB_ZERO">
73+
<color sid="transparent">0.000000 0.000000 0.000000 1.000000</color>
74+
</transparent>
75+
<transparency>
76+
<float sid="transparency">0</float>
77+
</transparency>
78+
</lambert>
79+
</technique>
80+
</profile_COMMON>
81+
</effect>
82+
</library_effects>
83+
<library_geometries>
84+
<!-- We define a terrain -->
85+
<geometry id="Terrain1">
86+
<mesh>
87+
<source id="terrain1MeshSource">
88+
<float_array id="terrain1FloatArray" count="12">
89+
2000 -2500 0
90+
-2000 -2500 0
91+
-2000 2500 0
92+
2000 2500 0
93+
</float_array>
94+
<technique_common>
95+
<accessor count="4" source="#terrain1FloatArray" stride="3">
96+
<param name="X" type="float" />
97+
<param name="Y" type="float" />
98+
<param name="Z" type="float" />
99+
</accessor>
100+
</technique_common>
101+
</source>
102+
<vertices id="terrain1VerticesSource">
103+
<input semantic="POSITION" source="#terrain1MeshSource" />
104+
</vertices>
105+
<polylist material="CommonMaterial" count="1">
106+
<input offset="0" semantic="VERTEX" source="#terrain1VerticesSource" />
107+
<vcount>5</vcount>
108+
<p>0 1 2 3 0</p>
109+
</polylist>
110+
</mesh>
111+
<extra>
112+
<technique profile="PVCollada-2.0">
113+
<!-- terrain tag -->
114+
<pv:terrain>
115+
<pv:vertex_count>4</pv:vertex_count>
116+
<pv:triangle_count>2</pv:triangle_count>
117+
<pv:bounding_box_min>-10.0 -20.0 -30.0</pv:bounding_box_min>
118+
<pv:bounding_box_max>10.0 20.0 30.0</pv:bounding_box_max>
119+
</pv:terrain>
120+
</technique>
121+
</extra>
122+
</geometry>
123+
<!-- We define the model for a rack -->
124+
<geometry id="Rack1Model">
125+
<mesh>
126+
<source id="rack1MeshSource">
127+
<float_array id="rack1FloatArray" count="12">
128+
0 0 0
129+
-1500 0 0
130+
-1500 -500 200
131+
0 -500 200
132+
</float_array>
133+
<technique_common>
134+
<accessor count="4" source="#rack1FloatArray" stride="3">
135+
<param name="X" type="float" />
136+
<param name="Y" type="float" />
137+
<param name="Z" type="float" />
138+
</accessor>
139+
</technique_common>
140+
</source>
141+
<vertices id="rack1VerticesSource">
142+
<input semantic="POSITION" source="#rack1MeshSource" />
143+
</vertices>
144+
<triangles count="2" material="CommonMaterial">
145+
<input offset="0" semantic="VERTEX" source="#rack1VerticesSource" />
146+
<p>3 1 2 1 3 0</p>
147+
</triangles>
148+
</mesh>
149+
<extra>
150+
<technique profile="PVCollada-2.0">
151+
<!-- rack tag -->
152+
<pv:rack>
153+
<pv:rack_type>fixed_tilt</pv:rack_type>
154+
<pv:module_rows>1</pv:module_rows>
155+
<pv:module_columns>4</pv:module_columns>
156+
<pv:tilt>0</pv:tilt>
157+
<pv:azimuth>0</pv:azimuth>
158+
<pv:module_id>ModuleModel1</pv:module_id>
159+
</pv:rack>
160+
</technique>
161+
</extra>
162+
</geometry>
163+
</library_geometries>
164+
<library_nodes>
165+
<!-- We define the model for a table with 1 rack -->
166+
<node id="TableModel1">
167+
<!-- We instantiate the rack model -->
168+
<instance_geometry url="#Rack1Model">
169+
<bind_material>
170+
<technique_common>
171+
<instance_material symbol="CommonMaterial" target="#Material1" />
172+
</technique_common>
173+
</bind_material>
174+
<extra>
175+
<technique profile="PVCollada-2.0">
176+
<!-- instance_rack tag -->
177+
<pv:instance_rack id="rackInstance1" />
178+
</technique>
179+
</extra>
180+
</instance_geometry>
181+
<extra>
182+
<technique profile="PVCollada-2.0">
183+
<!-- table tag -->
184+
<pv:table>
185+
<pv:type>fixed</pv:type>
186+
</pv:table>
187+
</technique>
188+
</extra>
189+
</node>
190+
</library_nodes>
191+
<library_visual_scenes>
192+
<visual_scene id="VisualSceneNode" name="Visual Scene">
193+
<!-- We instantiate the terrain -->
194+
<node id="TerrainNode1" name="TerrainNode1" sid="TerrainNode1">
195+
<instance_geometry url="#Terrain1">
196+
<extra>
197+
<technique profile="PVCollada-2.0">
198+
<!-- instance_terrain tag, might not have any child tags at the start but can be useful in the future -->
199+
<pv:instance_terrain />
200+
</technique>
201+
</extra>
202+
</instance_geometry>
203+
</node>
204+
<!-- We instantiate a first fixed tilt table, without any transformation -->
205+
<node id="PVnode1" name="PVnode1" sid="PVnode1">
206+
<instance_node url="#TableModel1">
207+
<extra>
208+
<technique profile="PVCollada-2.0">
209+
<!-- instance_table tag -->
210+
<pv:instance_table>
211+
<pv:instance_racks_array>
212+
<pv:instance_rack_ref id="rackId1" url="#rackInstance1" />
213+
</pv:instance_racks_array>
214+
</pv:instance_table>
215+
</technique>
216+
</extra>
217+
</instance_node>
218+
</node>
219+
<!-- We instantiate a second fixed tilt table (with a translation) -->
220+
<node id="PVnode2" name="PVnode2" sid="PVnode2">
221+
<translate>0 -800 0</translate>
222+
<instance_node url="#TableModel1">
223+
<extra>
224+
<technique profile="PVCollada-2.0">
225+
<!-- instance_table tag -->
226+
<pv:instance_table>
227+
<pv:instance_racks_array>
228+
<pv:instance_rack_ref id="rackId2" url="#rackInstance1" />
229+
</pv:instance_racks_array>
230+
</pv:instance_table>
231+
</technique>
232+
</extra>
233+
</instance_node>
234+
</node>
235+
<!-- We instantiate a third fixed tilt table (with another translation) -->
236+
<node id="PVnode3" name="PVnode3" sid="PVnode3">
237+
<translate>0 -1600 0</translate>
238+
<instance_node url="#TableModel1">
239+
<extra>
240+
<technique profile="PVCollada-2.0">
241+
<!-- instance_table tag -->
242+
<pv:instance_table>
243+
<pv:instance_racks_array>
244+
<pv:instance_rack_ref id="rackId3" url="#rackInstance1" />
245+
</pv:instance_racks_array>
246+
</pv:instance_table>
247+
</technique>
248+
</extra>
249+
</instance_node>
250+
</node>
251+
</visual_scene>
252+
</library_visual_scenes>
253+
<scene>
254+
<instance_visual_scene url="#VisualSceneNode" />
255+
</scene>
256+
</COLLADA>

0 commit comments

Comments
 (0)