Group Details Private



Member List

  • RE: simple hull fonction

    Sorry, but the hull of 3D solids is not possible with V1 of

    There's a pull request for this which uses an external library, if you would like to try modifying the CSG library locally.

    PR #134

    Otherwise, please be patient as we hope to include this in V2.

    posted in Development Discussions
  • V2 Performance

    So, it's time for another update on V2 progress.

    We have been busy finishing those last 5% of changes to the CSG library, which is DONE!!! 🙌 And now, those changes are being merged into the larger repository ( as V2 changes.

    There's a lot of COOL things in V2. 😎

    As mentioned earlier, all of V2 has full test coverage, so we now know when changes break things. And, we have also been working on some performance tests as well, in order to know when performance is affected.

    I thought you'd be interested...

    Here's a comparison of V2 performance versus V1 performance. Note that comparisons are not apples to apples, but you'll get an idea of what's improving. Also, we now know where we need to improve as well.

    PDF File

    posted in Development Discussions
  • V2 Rotate Extrude

    We are still working on V2 changes, and making some excellent progress now. So, I thought another teaser would be appropriate.

    The extrusion functionality has been expanded slightly, allowing almost any shape to be extruded (within limits). This also means that shapes with holes can be extruded as well. Here's a quick example of the new extrudeRotate() function.


    posted in Development Discussions
  • RE: how to run demo in V2/web?

    Hi @LinGuanfu !
    Visually that seeems correct: if you click on help/question mark do you have a menu with a list of examples ?
    also looking at the console output it seems the two instances are created correctly.
    Please try opening a design in both panels (or drag & droping a jscad file/folder).
    The css is not finished and could use some tweaking (or might not be a perfect fit for all use cases, but should be easy to change 🙂

    posted in Development Discussions
  • V2 Deserializers (Import)

    There are some functional changes coming in the V2 deserializers, i.e. importing AMF, DXF, OBJ, STL, and SVG files.

    The first major changes is that both translation and instantiation is possible. Like before, translation of found geometries to JSCAD scripts is possible. In addition, found geometries can instantiated directly in object form.

    The second major change is that ALL found geometries are returned. No more unions. So, you can directly work with any one of geometries.

    The third major change is...


    ... geometries can have color. This conversion was from a large DXF with lots of 2D lines.

    posted in Development Discussions
  • RE: Design with random values

    Maybe you could build a table of randon values while in 3D mode, then save those for use by the 2D mode.

    posted in Comments & Feedback
  • RE: V2 Offset

    @z3dev This looks absolutely amazing !
    Lots of uses cases 🙂 (I am a sucker for 2d in 3d haha)

    posted in Development Discussions
  • V2 Offset

    There's some new functionality coming with V2, which is pretty exciting. So, I thought a little preview would be nice.

    This is the new offset() function, which can calculate the offset of a path or a 2D geometry.

    Here's a photo of a line (black) being offset both positive (green) and negative (red), with rounded corners.


    And here's a simular image of a 2D geometry, but note that this geometry has a hole. So, offsets are applied to both inside and outside edges. In this case, the corners are only connected at the intersection of the edges.


    Hope you like this one!

    posted in Development Discussions
  • JSCAD V2 Update

    It’s been a while since we have posted any update on V2, so here’s a few notes on what’s going on.

    First, the reorganization of the CSG library is almost done, but like always the last 5% takes the most time. Once again, the major goals are:

    • Move to functional API, i.e. no more monolithic objects
    • Standardized function names, parameters, error checks, etc.
    • Lots of small modules to allow more reuse
    • Math and Geometry data structures based on arrays
    • Tests for everything

    There have been some name changes to functions, but the new names are clear. Parameter names haven’t changed much, but one major change is the usage of RADIANS for all angles and rotations. There are several bug fixes and improvements as well. Tests… yeah… lots… 394 test suites with over 90% coverage.. and this will continue to improve.

    Second, all JSCAD libraries are being brought together into one repository; This allows the libraries to be managed together, and produce releases faster. And hopefully, contributions from anyone at any level will be easier. This includes the CSG library, IO library, and new viewer.

    Third, you can start following along. There are still a few major changes coming, but you can already get a good feel for things by cloning the repository, and looking at the V2 branch.

    Feel free to ask any questions about V2.

    posted in Development Discussions
  • RE: Slicing again... simplifying code

    The simple solutions are always the best. Taking a super thin slice is a great idea, and maybe even the best.

    The core library will be for core functions, as we expect others (like you) to contribute some really nice high level functionality, such as slicing. If we get the core library rock solid then anything is possible.

    Projections on to arbitrary planes is on the wish list, but not there yet.

    Thanks for the awesome posts!

    posted in Comments & Feedback