Coder Social home page Coder Social logo

thedominion's Introduction

The Dominion

A Grasshopper plugin for modelling conics and mathematical curves accurately from equations.

Getting Started

If you are only interested in using the plugin, follow the Run instructions.

Prerequisites

Run

Run the sample files once loaded located in the samples folder.s

Option 1 (Experimental):
  1. Install the plugin from the Yak Package Manager
Option 2:
  1. Download the latest version from food4Rhino.
  2. Copy all unzipped contents into your component library, usually C:\Users\($user)\AppData\Roaming\Grasshopper\Libraries
  3. Unblock all files
Option 3:
  1. Navigate to Releases
  2. Download and unzip the latest Release, e.g. the_dominion_x.x.x.x.zip.
  3. copy all unzipped contents into your component library, usually C:\Users\($user)\AppData\Roaming\Grasshopper\Libraries
  4. Unblock all files

Build

Steps

If you want to build the application from source code on your local machine, follow the steps below:
  1. Clone the repository.
  2. Restore the NuGet packages in Visual Studio.
  3. Build the Application.
  4. Open Rhino.
  5. Run _GrasshopperDeveloperSettings from the Rhino Command Line.
  6. Add a Folder in the developer settings window, and point the explorer to the 'bin' folder of 'the_Dominion' clone on your local machine, e.g. C:\Users\($user)\source\repos\bulgos\the_Dominion\src\bin
  7. Run _Grasshopper from the Rhino Command Line and navigate to the 'Dominion' tab.

Deploy

If you are an owner and want to deploy the application to Yak:

Build Yak packages with Rhino 7
1. Set Visual Studio Build Configuration to Release.
2. Build Application (this will populate the \dist directory when building Release Configuration).
3. Open command prompt and point at root of the repository.
4. Navigate into distribution directory cd \the_Dominion\dist
5. Spec the manifest .yml file "C:\Program Files\Rhino 7\System\Yak.exe" spec
6. Update the manifest manually if necessary.
7. Build the package (currently windows only) "C:\Program Files\Rhino 7\System\Yak.exe" build --platform win

  1. Build the Application with the steps described above in Build.
  2. The Release configuration automatically specs a manifest file and builds the application (if the yak package manager/Rhino 7 is installed)
  3. If manual edit of manifest file not required, skip to 7.
  4. Update the manifest manually if necessary.
  5. Build the package (currently windows only) "C:\Program Files\Rhino 7\System\Yak.exe" build --platform win

Push package to Yak server

  1. Login to Mcneel account "C:\Program Files\Rhino 7\System\Yak.exe" login
  2. Push package to server "C:\Program Files\Rhino 7\System\Yak.exe" push the-dominion-x.x.x-any-win.yak
  3. Check package has been successfully pushed "C:\Program Files\Rhino 7\System\Yak.exe" search --all --prerelease the-dominion
If it is your first time deploying, try the test server:
  1. Push package to test server "C:\Program Files\Rhino 7\System\Yak.exe" push --source https://test.yak.rhino3d.com the-dominion-x.x.x-any-win.yak

  2. Check package has been successfully pushed "C:\Program Files\Rhino 7\System\Yak.exe" search --source https://test.yak.rhino3d.com --all --prerelease the-dominion

  3. Upload the_dominion.XX.tar archives to food4Rhino.

Yak Command Line Tool Reference

Authors

  • Daniel Christev
  • Michael Wickerson

License

MIT License. Copyright 2021 Daniel Christev, Michael Wickerson.
See LICENSE for details.

Useful Links

Conic Linear Programming
Rotation of axes
Wikipedia Conics
Conics and their Duals
AV Akopyan's Geometry of Conics

Other Conic and NURBS Tools

opennurbs
SCS (fast conic optimizer)
Conic Solver by HackerPoet

Plotting Conics for use in conjunction with below link:
matplotlib online python

General NURBS

Geometry for Naval Architects
Cubic Splines

thedominion's People

Contributors

bulgos avatar dchristev avatar michaelwickerson avatar mwickerson avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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.