Live data from Hacker News

BRL-CAD

en.wikipedia.org

81–85 of 85 posts

Re: BRL-CAD

#81
post #69

Earlier quoted context omitted.

I'd like to get some kind of OSS CAD group going but I'm not sure how much collaboration we could really do. FreeCAD uses OCCT, Solvespace uses it's own thing, and I think BRL-CAD uses its own thing (several of them). Then there are things like gcad3d https://www.gcad3d.org/ which has its own hand written STEP reader/writer which I'd love to borrow some day. If there is interest in creating a new geometry kernel I'd…

It's both a social and technical issue. For the prior, OpenCAx Association was created specifically to encourage and even sponsor OSS coordination. It's still in formation, but it's purpose has been to help underpin Google Summer of Code collaboration for BRL-CAD, FreeCAD, OpenSCAD, LibreCAD, STEPcode, IfcOpenShell, and most recently KiCAD. For the latter, creating a shared product or even sharing small subsets of lo…

> we're working on the clean API problem developing what we calling the Modular Object-Oriented Solidity Engine (MOOSE)

MOOSE meet Tovero the horse.

I guess everybody's gone from this post, but for posterity, it might be worth looking more closely at the source for Tovero, since we had to work around the lack of a formal C API when wrapping BRL-CAD with C++. In retrospect, I probably wouldn't even have chosen C++, but just done a C API which would be easier to use with the FFI of many languages like Python, Julia, or Common Lisp--and eliminated the need for SWIG. At least think about putting a C API on top of the OO of MOOSE, if you intend it to be accessed by other languages.

For an intelligent way of putting a C API over a C++ OO design see:

https://www.libfive.com

This project also demonstrates F-rep, a technique for modeling geometry with implicit functions and SDF, and Tovero 2.0 used it as an external dependency for its geometry kernel.

Re: BRL-CAD

#82
post #27

Earlier quoted context omitted.

>> Solvespace is cool though and that's the one I'm praying for, personally. Current Solvespace maintainer here. IMHO there is a lot that can readily be added to solvespace. Then there could be a big effort to do hierarchical sketches. And it is reasonably possible to rewrite some of the geometry internals if needed. All of these things are a LOT of work. The problem is the number of people with the background, softw…

First I have heard of Solvespace so a naive zen-mind question. Does any system aspire to be a Prolog for 3D? You sketch a variety of views and a system solves, if possible, for a solid geometry representation?

This is, in spirit, what Solvespace does--although like the other reply here says with extruded 2D.

From https://solvespace.com/tech.pl

> The core of any parametric CAD program is its geometric constraint solver.

and

> In SolveSpace, constraints are represented as equations in a symbolic algebra system. In general, these equations are solved numerically, by a modified Newton's method.

and from https://en.wikipedia.org/wiki/Geometric_constraint_solving#M...

> symbolic methods have been applied to this type of constraint solving (see Reference 20 on the Wikipedia link).

And your Zen "beginner mind" question got me to thinking, maybe I could use Prolog itself in my CAD system to directly make 3D shapes, since Prolog has been written in Lisp. Although Prolog does have a number of limitations:

https://en.wikipedia.org/wiki/Prolog#Limitations

Re: BRL-CAD

#83
post #76

Earlier quoted context omitted.

Isn't Pro/E a b-rep cad? BRL-CAD is one of the few "full-fledged" CAD systems that I know of which is explicitly CSG, while most (all?) commercial CAD programs are B-REP in nature. CSG and B-REP are two worlds apart. I'm not sure why in the comments we're suggesting alternatives in the two categories interchangeably. They're not [*]. An alternative to BRL-CAD would be OpenSCAD or libfive studio + other tools (since B…

Just a point of clarity, BRL-CAD now also supports BREP and is technically a hybrid modeling system. CSG and hierarchical relationships still underpin, but a lot of effort was invested in BREP support over many years. There was already extensive support for polygonal BREP, but NURBS BREP was added to support seamless conversion of commercial CAD. BREP NURBS can be imported, ray traced, and facetized. BRL-CAD still ne…

Thanks for the very detailed reply. Evaluating NURBS is useful, but you piqued my interested in the reverse operation. For a moment I almost had the impression we could specify CSG operations based on features extracted from the BREP reconstruction (that would be a game-changer!).

I was looking up at the current docs for the csg->brep conversion, but I don't really see much. Does brlcad actually allow to fit/reconstruct NURBS over the constructed geometry? The export docs still mention IGES export is just faceted.

I'm mostly using openscad and cgal directly, and my experience with both is that model regeneration takes a nosedive for anything non trivial. openscad for example doesn't offer any tool to shoot/analyze rays. The realtime preview also suffers for coplanar z-fighting issues, often making exact CSG operation really hard to debug. However the ergonomics are pretty decent when iterating and constructing geometry on the fly.

Can I ask your role in brl-cad? All your posts are extremely detailed. Are you a contributor? I wonder if I should reinvest time in brl-cad once again.

Re: BRL-CAD

#84

Earlier quoted context omitted.

Or, to make a directly relevant parallel, the adoption of Blender. It used to be a niche open source tool whereas any self respecting professional used Maya or 3DS Max, and Adobe products. Now it ate the entire visual effects and video game industries.

Blender provides much of the value of its competitors. A purely CAD tool does not. You have to solve the other problems primarily, while also having CAD. Otherwise, it's like having a text editor when no programming languages exist. What is your business going to do with that?

> Otherwise, it's like having a text editor when no programming languages exist.

You mean a bit like an operating system without a kernel...?

Re: BRL-CAD

#85

Earlier quoted context omitted.

"drafting is a low-value activity " "low-value workers". ... ... ??

Drafting doesn't pay well. It's an entry-level position.

Is drafting even a separate role anymore. Most engineers seem to just do it themselves?

Cad software often includes simulation stuff which requires an engineers mind.

Post reply on HN