 |
CLIP Score: 35.04
from AIDL import *
def residential_house(
house_width: float = 30 * feet,
house_height: float = 20 * feet,
garage_width: float = 10 * feet,
garage_height: float = 8 * feet,
window_width: float = 3 * feet,
window_height: float = 4 * feet,
roof_height: float = 5 * feet
):
"""
Model a simple rectangular residential house elevation with a garage and
windows.
"""
house = Solid()
garage = Solid(shift=(-house_width/4, -house_height/2 + garage_height/2)) # Positioning garage at bottom left
windows = Hole() # We'll add a few windows
roof = Solid(shift=(0, house_height/2)) # Positioning roof at the top of the house
house.garage = garage
house.windows = windows
house.roof = roof
# Define the main body of the house.
house.body = Rectangle((0, 0), house_width, house_height)
# Define the garage.
garage.body = Rectangle((0,0), garage_width, garage_height)
# Define the roof
roof.pitch = Triangle((0, 1/3 * roof_height), house_width, roof_height)
# Define windows. We'll place four equally spaced windows.
window_positions = [(-house_width/4, house_height/4),
(0, house_height/4),
(house_width/4, house_height/4),
(house_width/4, -house_height/4)]
for i, pos in enumerate(window_positions):
windows.__setattr__(f'window_{i}', Rectangle(pos, window_width, window_height))
return house
with AIDL_2D:
model = residential_house()
print(model.Solve())
model.Render()
|
Please write an AIDL program to generate a architect's elevation of a residential house with garage and windows
Let's start by outlining the key features for the architect's elevation of a residential house with a garage and windows. We'll focus on creating an overall outline of the house, followed by the garage and window details.
Here's a step-by-step approach to writing the AIDL program:
1. **Define the main structure of the house.**
2. **Add the garage at the appropriate position.**
3. **Add windows at the appropriate positions.**
I'll proceed with defining the AIDL program. If there are specific dimensions or additional features you want to include, please let me know.
### Step 1: Define the main structure of the house
We'll start by creating the main body of the house as a `Solid` structure with a rectangular shape. We'll also add a roof as a triangle.
### Step 2: Include the garage
We'll add the garage as a `Solid` structure inside the main house structure.
### Step 3: Include windows
We'll add windows as `Hole` structures to indicate cut-outs for glass sections.
Here's the AIDL program to generate the architect's elevation of a residential house with a garage and windows:
```python
from AIDL import *
def residential_house(
house_width: float = 30 * feet,
house_height: float = 20 * feet,
garage_width: float = 10 * feet,
garage_height: float = 8 * feet,
window_width: float = 3 * feet,
window_height: float = 4 * feet,
roof_height: float = 5 * feet
):
"""
Model a simple rectangular residential house elevation with a garage and
windows.
"""
house = Solid()
garage = Solid(shift=(-house_width/4, -house_height/2 + garage_height/2)) # Positioning garage at bottom left
windows = Hole() # We'll add a few windows
roof = Solid(shift=(0, house_height/2)) # Positioning roof at the top of the house
house.garage = garage
house.windows = windows
house.roof = roof
# Define the main body of the house.
house.body = Rectangle((0, 0), house_width, house_height)
# Define the garage.
garage.body = Rectangle((0,0), garage_width, garage_height)
# Define the roof
roof.pitch = Triangle((0, 1/3 * roof_height), house_width, roof_height)
# Define windows. We'll place four equally spaced windows.
window_positions = [(-house_width/4, house_height/4),
(0, house_height/4),
(house_width/4, house_height/4),
(house_width/4, -house_height/4)]
for i, pos in enumerate(window_positions):
windows.__setattr__(f'window_{i}', Rectangle(pos, window_width, window_height))
return house
with AIDL_2D:
model = residential_house()
print(model.Solve())
model.Render()
```
This program constructs a simple elevation of a residential house with a garage and windows. The main body of the house is a rectangle, the garage is another rectangular section positioned at the bottom left, and the roof is modeled as a triangle. Additionally, four windows are added, distributed equally on the front elevation.
Please feel free to provide any specific dimensions or additional details you'd like to include so we can refine the program further.
|