<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[MAJOR Release : 2021 JUN 01]]></title><description><![CDATA[<h3>ATTENTION : MAJOR UPDATE</h3>
<p dir="auto">There's a new release of JSCAD, including MAJOR CHANGES from several pull requests.</p>
<p dir="auto">The maths classes / APIs have been adjusted to the same API as gl-matrix. This has the following affects:</p>
<ul>
<li>improved performance as API signatures are now fixed (no more ...params)</li>
<li>improved performance in the use of math objects (less allocations)</li>
<li>improved interoperability with gl-matrix (no need to learn a different API)</li>
</ul>
<p dir="auto">Note: See <a href="https://github.com/jscad/OpenJSCAD.org/files/6572595/JSCAD.Performance20210519.pdf" rel="nofollow ugc">the performance results</a> at GitHub.</p>
<p dir="auto">If your designs use the maths API then updates are required. The function signatures for ALL maths objects have changed; line2, line3, mat4, plane, vec2, vec3, vec4.</p>
<p dir="auto">Especially review the use of maths.<em>.transform() and maths.</em>.scale() function calls.</p>
<p dir="auto">Designs with the largest impact are those using extrudeFromSlices(), which typically uses maths.</p>
<h4>Features</h4>
<p dir="auto"><strong>modeling:</strong> rework math objects to conform with gl-matrix (#804)<br />
<strong>modeling:</strong> added aboutEqualNormals() to math utils<br />
<strong>modeling:</strong> added fromVectorRotation() to mat4<br />
<strong>modeling:</strong> added projectionOfPoint() to plane<br />
<strong>modeling:</strong> new project() function added to extrusions (#844)<br />
<strong>modeling:</strong> new scission() function added to booleans (#846)</p>
<h4>Bug Fixes</h4>
<p dir="auto"><strong>modeling:</strong> fixed use of vec3.snap in triangulatePolygons<br />
<strong>modeling:</strong> rewrote vec3 orthogonal() to do the correct thing, and adjusted test suites<br />
<strong>modeling:</strong> update and correct TypeScript type definitions</p>
<p dir="auto">Special thanks to @minodisk for the TypeScript changes!<br />
BIG THANKS to @giboneet for the initial implementation of the new scission() function.</p>
<p dir="auto">Successfully published:</p>
<ul>
<li>@jscad/cli@2.2.3</li>
<li>@jscad/core@2.3.3</li>
<li>@jscad/examples@2.3.0</li>
<li>@jscad/amf-deserializer@2.1.0</li>
<li>@jscad/amf-serializer@2.0.4</li>
<li>@jscad/dxf-deserializer@2.3.0</li>
<li>@jscad/dxf-serializer@2.0.4</li>
<li>@jscad/io-utils@2.0.3</li>
<li>@jscad/io@2.0.4</li>
<li>@jscad/json-deserializer@2.0.4</li>
<li>@jscad/json-serializer@2.0.3</li>
<li>@jscad/obj-deserializer@2.0.3</li>
<li>@jscad/stl-deserializer@2.1.0</li>
<li>@jscad/stl-serializer@2.0.4</li>
<li>@jscad/svg-deserializer@2.2.2</li>
<li>@jscad/svg-serializer@2.2.1</li>
<li>@jscad/x3d-serializer@2.2.2</li>
<li>@jscad/modeling@2.3.0</li>
<li>@jscad/regl-renderer@2.1.2</li>
<li>@jscad/vtree@2.0.4</li>
<li>@jscad/web@2.3.2</li>
</ul>
]]></description><link>https://openjscad.nodebb.com/topic/262/major-release-2021-jun-01</link><generator>RSS for Node</generator><lastBuildDate>Mon, 18 May 2026 03:39:44 GMT</lastBuildDate><atom:link href="https://openjscad.nodebb.com/topic/262.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 01 Jun 2021 00:36:25 GMT</pubDate><ttl>60</ttl></channel></rss>