<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic 2D Only Complex Profile in Libraries &amp; objects</title>
    <link>https://community.graphisoft.com/t5/Libraries-objects/2D-Only-Complex-Profile/m-p/270918#M1924</link>
    <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;R&gt;Hi all,&lt;BR /&gt;
&lt;BR /&gt;
This is probably an odd request, but is there someway to draw a &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;Complex Profile&lt;E&gt;&lt;/E&gt; in 2D?&lt;BR /&gt;
&lt;BR /&gt;

&lt;PRE&gt;for _iComp = 1 to _nComponentsT

	if _bShowPart[_iComp] then
		dim _currSurfaces[]
		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_comp_surfaces", _currSurfaces)

		_bmat = 1
		_surface = 1
		_pen = 1

		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_bmat", _bmat)
		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_surface", _surface)
		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_outlinepen", _pen)

		building_material _bmat
		pen _pen

		_surfIdx = 1
		for _i = _contStartPointsT[_iComp] to _contEndPointsT[_iComp] step 5

		put _profileGeometryRawDataT[_i], 
			_profileGeometryRawDataT[_i + 1], 
			!0, 	! angle of sides from the perpendicular plane
			_profileGeometryRawDataT[_i + 2] * 15 + not(_profileGeometryRawDataT[_i + 3]) * 64 + _profileGeometryRawDataT[_i + 4], 
			!_currSurfaces[_surfIdx]	
					
		_surfIdx = _surfIdx + 1
		next _i

		Poly2_b	NSP/3,	15,
				gs_fill_pen2, gs_back_pen2,
				get(NSP)
	endif

next _iComp&lt;/PRE&gt;

&lt;BR /&gt;
It basically comes down to an understanding of how to manipulate &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;_profileGeometryRawData&lt;E&gt;&lt;/E&gt;. From it's interaction with &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;cprism_{2}&lt;E&gt;&lt;/E&gt; we can see that it follows:&lt;BR /&gt;

&lt;PRE&gt;x1, y1, alpha1, s1, mat1,
...
xn, yn, alphan, sn, matn&lt;/PRE&gt;

&lt;BR /&gt;
I had figured that I could just comment out the alpha and mat buffer adds and reflect that in the node count, but I get a missing parameters warning so I am assuming I have overlooked something...&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ling.&lt;/R&gt;&lt;/DIV&gt;</description>
    <pubDate>Tue, 12 Nov 2019 05:00:35 GMT</pubDate>
    <dc:creator>Lingwisyer</dc:creator>
    <dc:date>2019-11-12T05:00:35Z</dc:date>
    <item>
      <title>2D Only Complex Profile</title>
      <link>https://community.graphisoft.com/t5/Libraries-objects/2D-Only-Complex-Profile/m-p/270918#M1924</link>
      <description>&lt;DIV class="actalk-migrated-content"&gt;&lt;R&gt;Hi all,&lt;BR /&gt;
&lt;BR /&gt;
This is probably an odd request, but is there someway to draw a &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;Complex Profile&lt;E&gt;&lt;/E&gt; in 2D?&lt;BR /&gt;
&lt;BR /&gt;

&lt;PRE&gt;for _iComp = 1 to _nComponentsT

	if _bShowPart[_iComp] then
		dim _currSurfaces[]
		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_comp_surfaces", _currSurfaces)

		_bmat = 1
		_surface = 1
		_pen = 1

		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_bmat", _bmat)
		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_surface", _surface)
		n = REQUEST{3} ("Profile_component_info", myProfileIdxT, _iComp, "gs_profile_outlinepen", _pen)

		building_material _bmat
		pen _pen

		_surfIdx = 1
		for _i = _contStartPointsT[_iComp] to _contEndPointsT[_iComp] step 5

		put _profileGeometryRawDataT[_i], 
			_profileGeometryRawDataT[_i + 1], 
			!0, 	! angle of sides from the perpendicular plane
			_profileGeometryRawDataT[_i + 2] * 15 + not(_profileGeometryRawDataT[_i + 3]) * 64 + _profileGeometryRawDataT[_i + 4], 
			!_currSurfaces[_surfIdx]	
					
		_surfIdx = _surfIdx + 1
		next _i

		Poly2_b	NSP/3,	15,
				gs_fill_pen2, gs_back_pen2,
				get(NSP)
	endif

next _iComp&lt;/PRE&gt;

&lt;BR /&gt;
It basically comes down to an understanding of how to manipulate &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;_profileGeometryRawData&lt;E&gt;&lt;/E&gt;. From it's interaction with &lt;I&gt;&lt;/I&gt;&lt;S&gt;&lt;I&gt;&lt;I&gt;&lt;/I&gt;&lt;/I&gt;&lt;/S&gt;cprism_{2}&lt;E&gt;&lt;/E&gt; we can see that it follows:&lt;BR /&gt;

&lt;PRE&gt;x1, y1, alpha1, s1, mat1,
...
xn, yn, alphan, sn, matn&lt;/PRE&gt;

&lt;BR /&gt;
I had figured that I could just comment out the alpha and mat buffer adds and reflect that in the node count, but I get a missing parameters warning so I am assuming I have overlooked something...&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
Ling.&lt;/R&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 12 Nov 2019 05:00:35 GMT</pubDate>
      <guid>https://community.graphisoft.com/t5/Libraries-objects/2D-Only-Complex-Profile/m-p/270918#M1924</guid>
      <dc:creator>Lingwisyer</dc:creator>
      <dc:date>2019-11-12T05:00:35Z</dc:date>
    </item>
  </channel>
</rss>

