FarmBot / Farmbot-Web-App

Setup, customize, and control FarmBot from any device
https://my.farm.bot
MIT License
890 stars 329 forks source link

3D Farm Designer #2457

Open roryaronson opened 7 months ago

roryaronson commented 7 months ago

Replace the 2D, SVG based farm designer with a fully 3D, three.js based farm designer. Demo.

FarmBot 3D Demo

Coordinate system

As most objects in the scene (the gantry, plants, grid lines, points, etc) will need to be positioned based off the FarmBot's origin, it maybe makes the most sense for the three.js origin and the FarmBot origin to be one in the same. This will avoid having to translate/rotate the majority of objects, and the three.js coordinates will always equal the FarmBot coordinates. Meanwhile, the rest of the environment (camera position/angle, ground plane, sun, etc will need to be translated/rotated accordingly based on the bearing and size of the bot.

Perhaps other origins would make more sense though, such as the top center of the soil, top center of the ground, top of the raised bed at the home position. This should be discussed a bit more so the best architecture is chosen.

Environment

Grid

Tools

FarmBot

Initial 3D assets should be from the Genesis v1.7 design. We can eventually add the old style tracks for v1.6- bots, and the 3-in-1 tool head and different gantry wheel plates for Express bots. All other assets can remain the same amongst all bots.

Plants, Weeds, Points

Photos

Future