Giter Club home page Giter Club logo

Comments (4)

dxli avatar dxli commented on May 24, 2024

it's rendered correctly in the lastest development version.

from librecad.

Rodrigodd avatar Rodrigodd commented on May 24, 2024

@dxli Yes, but not in the Autodesk software. My point is that the HATCH boundary geometry may be invalid, at least according to Autodesk, which, I believe, owns the DXF format.

from librecad.

dxli avatar dxli commented on May 24, 2024

dxf format specifies:

  1. number of loops;
  2. edges of a loop;
  3. edge type (lines here);
  4. edge line positions.

Beyond that, we don't simulate Autodesk behaviors. In this particularly case, valid loops can be created from edges, so hatch is created this way.

from librecad.

lordofbikes avatar lordofbikes commented on May 24, 2024

The DXF reference for HATCH SOLID is not very specific about the composition of boundary path data. There is much room for interpretation.
Basically the same applies as in OSGeo/gdal#9240, namely that the created geometry is invalid.

So what LibreCAD can do is to prohibit the use of non intersecting/including multi loop boundaries for hatch. But somebody might see this as feature and will be disappointed when we change it.

As we know the code how the hatch is created, we also have the working code to render this as expected. But we don't know the closed code from Autodesk, so it would require some valuable efforts to reverse-engineer the Autodesk code to find a way to create this special case of HATCH in a DXF.

The conclusion is, that you simply create two hatch, one for each square, and you will have a DXF which is valid for OSGeo, Autodesk and LibreCAD.

from librecad.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.