SourceForge has been redesigned. Learn more.

How to create BRL-CAD on windows XP system?

  • titwjc

    titwjc - 2007-02-26


    It is my luck to find BRL-CAD software in If possible, I would like to do some extended CAD works based on it. However I am just a beginner.

    I have downloaded “brlcad-7.8.0” source code in order to create BRL-CAD software from it on windows system by Visual Studio 2003. The downloaded “brlcad-7.8.0” source code includes many folds (parts). However I could not know which parts are for windows system? How to create it?

    Could you tell me what the correct steps are to set up the project for program?

    Thank you very much for all your supports.

    Best regards,

    Js. Hs

    • alehant

      alehant - 2007-02-26

      I'm in a very similar situation.
      I would like to develop a "mini CAM" system based on BRL-CAD, but I don't know how I should begin.
      Is it possible to embed some library from BRL-CAD in an OOP application on C++? Has BRL-CAD any interface for this purpose?
      All I have is the "ApplicationDevelopment.pdf" with some examples and "Code documentation" from
      Could somebody with more experience help us please?

      Thank you very much again.

      Sorry for my English(I'm beginner at it)

      • Daniel Roßberg

        Daniel Roßberg - 2007-02-27


        There are two main development directions in the BRL-CAD MS Windows port. Their workspaces can be found under the brlcad/misc directory.

        win32-msvc7 should contain all the main libraries. You can find the binaries below "BRL-CAD for Windows" in the Downloads section on SourceForge.

        win32-msvc contains a workspace to build a DLL with BRL-CADs core libraries. It is intended to be used in other (e.g. commercial) applications. is an example of such an application. You can find this DLL and an "SDK" (with a small example project) below "BRL-CAD Runtime Libraries".

        However, I must warn you: BRL-CAD is a powerful geometry modeling system with a terrible API.


      • Sean Morrison

        Sean Morrison - 2007-03-22

        It is possible to use BRL-CAD's geoemtry engine into a C++ code, though it requires a little massaging.  There is a C++ interface being worked on, but that's not at a usable stage just yet (you're more than welcome to help get it there).  As to using the geometry engine in a CAM application, the effort is probably going to be the conversion to gcode and how you go about doing that.  There are various geometry representations (implicit CSG, explicit spline surfaces, explicity polygonal surfaces) and which to support or how to go from that to machining paths is a task in itself.

        You could implement a ray-tracing based approach, extracting/evaluating slices of geometry and then evaluating tool paths.  You help us improve the explicit spline surface (BREP) integration so that you could extract exact contours for any slice.  One of those two methods would probably be the way to begin with the first being considerably easier and faster to implement; and the latter being more faithful/robust/fast to evaluate.


    • titwjc

      titwjc - 2007-02-27


      Glad to meet you. If possible, I would like to do some cooperation with you and coshare our progress in system development based on BRL-CAD. Could you send me "ApplicationDevelopment.pdf" and "Code documentation" to

      Thank you very much.

      Js. Hs

    • Sean Morrison

      Sean Morrison - 2007-03-22


      Glad to hear the interest.  For what it's worth, developer discussions are more readily held on the #brlcad IRC channel on instead of here, and sometimes on the mailing lists.  As to your questions, most of BRL-CAD "can" build on Windows -- there are projects in the misc/ directory for Visual Studio and the whole thing should compile under cygwin/mingw.  Daniel explains the different build systems well at and you can find more information about the libraries and other "folds" of BRL-CAD here:\checkout*/brlcad/brlcad/src/README\

      Additional information about the Windows build is in the doc/README.Windows file.  Other than that, I'd suggest joining the IRC channel so questions can be more interactively answered.



Log in to post a comment.