Seeing i've been working as independent since the past year and a half, I thought i should share some of the work i've been doing as Procedural Strategies.
As a part of the design of the ICRC visitor center in Geneva, Group8 architects, had planned a raw concrete ceiling. The structural constraints, as well as the acoustic constraints made it for a slightly too complex system to compute by hand. A custom software was developed in Processing to explore the relationships between the several ceiling elements (lights, fume escapes, acoustic elements, structure, water evacuation pipes, etc.). That allowed to place every element within the constraints specified by the structural engineer, as well as meet the requirements of the acoustic engineer.
Finally, the output of the building site drawings was totally automated.
Here's a small video showing the software's runtime.
It wouldn't have been possible to do it without the great Geomerative and Toxiclibs libraries.
More information about the project as well as some other projects i worked on can be found
here
Feedbacks on the video are very welcome, as I'm a real newbie when it comes to that :)
I'm working on a job to build a processing app that will output detailed construction sheets for a relatively big building project.
I've been using the Geomerative extensively and it's been of the utmost help when loading svg files, accessing the different layers, objects & al.
I'm however encountering an issue with the RFont class.
I need to replace about 23000 objects with a letter relative to their colors (there's 7 colors, and they're already organized by layers). I've successfully managed to replace the circles by the letters (by not drawing the layers with the 23000 objects, and only drawing the letters in a separate method).
The problem is that the display of the letters changes, it's as if they've all had their respective geometry simplified.
in setup i've initialised the RFont with:
font =
new RFont(
"Arial Narrow.ttf", 10, RFont.
CENTER);
and in the draw, i have a method replacing the objects by letters as such:
publicvoid makeColorLetters() {
colorLetters = new RShape();
for (RShape currentColor : myPlan.getChild("COLORS").children) {
String layerName = currentColor.name;
RShape letterLayer = new RShape();
letterLayer.name = layerName;
for (RShape hole : myPlan.getChild(layerName).children) {
this being my first post here, i hope the matter won't sound too noobish and the problem will interest quite a few people. My programming knowledge isn't really advanced, so i guess i could say i'm an advanced noob for now :)
I'm currently working on an architectural project that involves distributing thousands of points within a shape (which is the shape of the ceiling of a building). Those points have to be organized according to a certain grid and avoid certain zones within that shape (seeing as they can only exist "on" the ceiling and can't exist where lights and fire extinguisher are).
I managed to build a quick mockup using a jpg as a map and having each pixel represent one element of the grid.This works pretty well, however i need to gain more precision and more flexibility.
I'd like to be able to load the svg file of the plan so as to be able to access the layer id of each path and have the points organise according and avoiding those paths with different rules per layers/paths. I believe this is possible with the Geomerative lib, as this is the one lib i've found that offers the more access to svg data and geometries. I've been looking into the tutorials and the example files to understand how that library works. I believe I grasped the concepts, but can't seem to understand how access data that is in the RShape where the SVG is loaded.
I do then manage to get access to every point information, but unfortunately only their x,y coordinates by using an RPoint[][] that contains all the paths and then going through each point in there. However those are ALL the points in my drawing and i'd like to be able to sort the paths and points.
I'd really be stocked if I could get some help on that if anyone fancies. I have spent the whole day looking for information and examples that would be close to what i'm trying to do to no avail.
Here's the very simple current code i'm at, but i'm very stuck, as i can't get further, until i access the SVG layer data.