<p dir="auto">Continuation of the discussion here which is a bit stale at this point: <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="45000584" data-permission-text="Title is private" data-url="https://github.com/mrdoob/three.js/issues/5410" data-hovercard-type="issue" data-hovercard-url="/mrdoob/three.js/issues/5410/hovercard" href="https://github.com/mrdoob/three.js/issues/5410">#5410</a></p>
<p dir="auto">The docs currently have 4 sections</p>
<ul dir="auto">
<li>Manual
<ul dir="auto">
<li>This has two pages at present, a very useful "Creating a scene" page and a kind of orphaned looking page on matrix transformations</li>
</ul>
</li>
<li>Reference
<ul dir="auto">
<li>This still needs some expansion in places, but should now be a complete API reference (as of r83). (ping me if you find mistakes, of which I'm sure there are more a few!)</li>
</ul>
</li>
<li>Examples
<ul dir="auto">
<li>This is very incomplete</li>
</ul>
</li>
<li>Developer Reference
<ul dir="auto">
<li>Also very incomplete</li>
</ul>
</li>
</ul>
<p dir="auto">The Wiki is a bit of a mess at the moment but has</p>
<ul dir="auto">
<li>TODO (things to be developed in Three)</li>
<li>JSON reference</li>
<li>link to migration guide</li>
<li>code style guide</li>
<li>FAQ section which largely link to github issues</li>
<li>various manual type articles</li>
<li>"On the Net" section with links to all kind of Three related info across the net (some broken and some out of date)</li>
</ul>
<p dir="auto"><a class="user-mention notranslate" data-hovercard-type="user" data-hovercard-url="/users/mrdoob/hovercard" data-octo-click="hovercard-link-click" data-octo-dimensions="link_type:self" href="https://github.com/mrdoob">@mrdoob</a> you mentioned here <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="195081128" data-permission-text="Title is private" data-url="https://github.com/mrdoob/three.js/issues/10342" data-hovercard-type="issue" data-hovercard-url="/mrdoob/three.js/issues/10342/hovercard" href="https://github.com/mrdoob/three.js/issues/10342">#10342</a> that you'd like the JSON reference to stay in the Wiki (although you also said in <a class="issue-link js-issue-link" data-error-text="Failed to load title" data-id="45000584" data-permission-text="Title is private" data-url="https://github.com/mrdoob/three.js/issues/5410" data-hovercard-type="issue" data-hovercard-url="/mrdoob/three.js/issues/5410/hovercard" href="https://github.com/mrdoob/three.js/issues/5410">#5410</a> that everything should go in the docs :p )</p>
<p dir="auto">I have two suggestions:</p>
<ol dir="auto">
<li>
<p dir="auto">Everything goes in the docs. Get rid of the Wiki</p>
</li>
<li>
<p dir="auto">Split like so:</p>
</li>
</ol>
<ul dir="auto">
<li>Docs: Everything related to using Three</li>
<li>Wiki: Everything related to developing Three</li>
</ul>
<p dir="auto">Obviously there would be some crossover in 2. but in ambiguous cases the docs should be preferred.</p>
<p dir="auto">When I create a shape with a sequence (shape.moveTo ..) and this sequence contains a shape.absarc or shape.arc (haven't tried splines) a twin point is added before the arc into the Shape definition ?</p>
<p dir="auto">In <a href="http://jsfiddle.net/hazq026t/7/" rel="nofollow">this sample</a> the twin point is # 2 (into the console).</p>
<p dir="auto">I don't know if it's a bug since it doesn't seems to alter following process (such as ShapeGeometry), but <code class="notranslate">shape.extractPoints()</code> retrieves these twin points ... and if I reuse the result to build something with THREE.ShapeUtils.triangulateShape() I will get the warning 'Unable to triangulate..' .. that's why I have to add this ugly patch :</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="	var loops = shape.extractPoints ( settings.curveResol );
	for (var l = 1 ; l &lt; loops.shape.length ; l++) {
		if( Math.abs( loops.shape[l].x - loops.shape[l-1].x ) &lt; 1E-10 &amp;&amp; Math.abs( loops.shape[l].y - loops.shape[l-1].y ) &lt; 1E-10 ) loops.shape.splice( l , 1 )
	}"><pre class="notranslate"><code class="notranslate">	var loops = shape.extractPoints ( settings.curveResol );
	for (var l = 1 ; l &lt; loops.shape.length ; l++) {
		if( Math.abs( loops.shape[l].x - loops.shape[l-1].x ) &lt; 1E-10 &amp;&amp; Math.abs( loops.shape[l].y - loops.shape[l-1].y ) &lt; 1E-10 ) loops.shape.splice( l , 1 )
	}
</code></pre></div>