Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace The Building Example #415

Open
madil4 opened this issue Nov 30, 2024 · 0 comments
Open

Replace The Building Example #415

madil4 opened this issue Nov 30, 2024 · 0 comments
Assignees
Labels
enhancement New feature or request

Comments

@madil4
Copy link
Owner

madil4 commented Nov 30, 2024

The goal of this issue is to create a parametric building example similar to this one, but with a focus on:

  • Use the new data model shown below as a proof-of-concept
  • Building the building block which in this case the Threejs objects for a Column and Slab

Notes:

  1. Keep it minimal and focused: Since we have a clear objective, limit the number of parameters. Perhaps only the number of stories.

  2. The aim is not to replace IFC but to make the analytical model more intuitive. For example, you can use colors to indicate material types (e.g., a Timber column).

3- Pay extra attention to trimming objects at intersections, such as where columns meet slabs.

4- This is a challenging task, and the way you structure the code is critical.

  • Aim for pure functions wherever possible.
  • Be mindful of state management—it can be tricky, especially if you're not familiar with VanJS. Let me know if you'd like to work on it together to get started.

5- As a future task, we plan to visualize connection types.

Data Mode:l

 type Building = {
  points: State<[number, number, number][]>; // all the points used to define stories, floors, ..etc
  stories: State<number[]>; // example [1,2,3] three stories defined by three points indices from the points list
  columns: State<Map<number, number[]>>; // example 2 -> [1,2,3] the keys of this map represent the story index
  // and the value is a list of point indices represent the column location at this story
  slabs: State<Map<number, number[][]>>; // example 2 -> [[1,2,3],[4,5,6,7]] the keys of this map represent the story index
  // and the value is a list of polygons at this story represented by point indices
};

Expected Output:
The end result should look similar to the image below, with parameters to adjust the number of stories or spans:
image

@madil4 madil4 added the enhancement New feature or request label Nov 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants