Giter VIP home page Giter VIP logo

openafpm-cad-core's Introduction

OpenAFPM CAD Core

Repository containing OpenAFPM wind turbine model made with open-source CAD program FreeCAD.

Installing Package

From the root of this repository:

pip install --editable .

Installing Macros

From the root of this repository:

./link_macros.bash

Related Repositories

Prerequisites

  1. Install Micromamba.

Setup

Execute the following commands from the root of this repository.

  1. Create openafpm-cad-core conda environment.

    micromamba env create --file environment.yml
    
  2. Activate openafpm-cad-core environment.

    micromamba activate openafpm-cad-core
    
  3. Add the $CONDA_PREFIX/lib directory to $PYTHONPATH (this allows FreeCAD to be imported as a module within python).

    ./add_conda_path_to_python_path.sh
    
  4. Deactivate and re-activate openafpm-cad-core environment.

    micromamba deactivate && micromamba activate openafpm-cad-core
    
  5. Verify freecad executable is accessible:

    freecad --version
    

Docs

Run ./make_docs.sh from docs/ with openafpm-cad-core conda environment activated.

How to Upgrade FreeCAD Version

The version of FreeCAD is defined in environment.yml within the root of this repository.

  1. Check if there's a newer version from FreeCAD's GitHub releases page or Wiki.

  2. Increase version for freecad in environment.yml.

  3. Remove openafpm-cad-core conda environment created in the "Setup" section.

    micromamba remove --name openafpm-cad-core --all
    
  4. Reperform steps in the Setup section to recreate openafpm-cad-core conda environment.

  5. Regression test all functionality. (TODO: Write documentation for this)

Generating OBJ Files for openafpm-cad-visualization

  1. Activate the openafpm-cad-core conda environment.

  2. If openafpm-cad-visualization is cloned up a directory from this repository, then run:

    python macros/visualize.py ../openafpm-cad-visualization/public/
    

Troubleshooting

Run /macros from FreeCAD's GUI to see FreeCAD related warnings and errors.

Currently, macros must be manually edited to remove multi-threading to avoid a pickle-related serialization error.

Supported FreeCAD Versions

Currently tested with FreeCAD 21.2.

Links

openafpm-cad-core's People

Contributors

gbroques avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

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.