IBRAHIM ALRASHED
Artist

Ibrahim Alrashed

Computational designer driving closed-form subdivision and lattice mathematics into cast concrete and cut timber.

Biography

I grew up around things being built — timber, concrete, the tolerance of a hand-cut joint — and I now write the algorithms that decide how they are shaped.

My practice sits where computational geometry meets physical fabrication. I work almost entirely in Houdini and VEX, building generative systems in which form isn't drawn but derived: a subdivision rule, a lattice tiling, a projection function, each carrying a small set of weights I tune until the geometry becomes something I didn't predict. What holds my attention is the moment mathematics stops being notation and becomes matter — when a recursive subdivision has to survive a 3D-printed sand mould, a steel cage and a concrete pour, or when a hexagonal lattice has to be collapsed onto a funnel surface and then flattened into profiles a three-axis router can actually cut.

I also work with my hands: CNC woodwork, furniture, kumiko joinery, building formwork. That side keeps the algorithms honest. A rule that produces a beautiful mesh but an unbuildable joint isn't finished.

I live and work in Syria, and most of what I've built stands in Aleppo, Tartus and Latakia. Working here means designing for the fabrication that is actually available rather than the fabrication a software tutorial assumes, and that constraint has shaped the work more than any aesthetic preference has.

Series

Series Narrative

Both of these works began the same way: with an equation I could not picture.

I don't sketch forms. I write a rule and then find out what it makes. In the Isaac Columns the rule is a Catmull-Clark subdivision with five extra weights bolted onto it — each new face point, edge point and vertex is not only averaged from its neighbours but pushed outward along its own normal by an amount I control. Classical subdivision smooths a shape toward a limit surface. Weighting it this way does the opposite: the surface refuses to settle, and every iteration grows a finer order of ornament out of the one beneath it. Seven columns came out of a single eight-sided primitive and five numbers.

The Tartus canopy starts from a hexagon instead. Connect its corners to its centroid, inscribe smaller triangles, delete what is surplus, and a hexagram is left; tile that on two lattice vectors and you have a Kagome grid — the same interlace I had already cut by hand in kumiko joinery, now at the scale of a roof. Then I remapped every lattice point onto a funnel through an exponential decay, and the flat pattern collapsed into supports.

What connects them is not geometry but the pour and the cut. An algorithm is free; a 3D-printed sand mould has to be segmented so it can be assembled around a steel cage, and concrete has to survive the release. A curved timber member has to be a profile a three-axis router can actually reach. Half of the design work in both projects was the translation — the point where an abstraction either becomes a physical object or stays a render.

Work 01
Cast concrete Isaac Column standing full height, its surface articulated by recursive weighted subdivision.
2024Aleppo, Syria

Isaac Columns

A family of seven cast concrete columns generated by one parametric system. The base geometry is a simple primitive; the surface articulation is produced entirely by recursive weighted Catmull-Clark subdivision, where five independent weights displace the face, edge and vertex points outward at each iteration rather than relaxing them inward. Changing those five values — or the iteration count alone — yields a different column, so no two in the set repeat.

Each column was cast rather than printed. The moulds were segmented and produced on a 3D sand printer, assembled around a welded steel reinforcement cage, filled with concrete and left to cure before release

Medium / materials

Cast concrete, 3D-printed sand moulds, steel reinforcement cage

Dimensions

Height 3.2 m · Diameter 620 mm · Weight approx. 1,150 kg per column

Count

7

Algorithm

Weighted Catmull-Clark subdivision

Fabrication

3D sand printing / moulding

Software

HoudiniVEXPythonBlender
Gallery
An array of column variants, each one produced by a different subdivision iteration value.
01 / 07
01
Multiple variations are produced by different iteration values.
Animation stepping a simple primitive through successive subdivisions into a complex column form.
02 / 07
02
From a simple object to a complex shape
Face point diagram: a new point is placed at the average of a face's corners, then pushed outward along the face normal by the weight w-f.
03 / 07
03
F′=P1+P2+⋯+Pnn+wf⋅nfF' = \frac{P_1 + P_2 + \cdots + P_n}{n} + w_f \cdot n_f Creates a new point at the center of each face (average of corners), then pushes it outward along the face normal by wfw_f
Edge point diagram: each edge midpoint is repositioned between neighbouring face centres and corner points, blended by the weight w-1, then pushed outward along the average edge normal by w-e.
04 / 07
04
E′=∑F(1+w1)4+∑P(1−w1)4+we⋅neE' = \sum \frac{F(1+w_1)}{4} + \sum \frac{P(1-w_1)}{4} + w_e \cdot n_e Repositions each edge-mid point between nearby face centers and corner positions, blended by w1w_1 ​ . Then pushes it outward by wew_e ​ along the average edge normal.
Vertex point diagram: original corners are repositioned by a valence-weighted average of surrounding face and edge points, then pushed outward along the point normal by w-p.
05 / 07
05
V′=(1+w2)Favg+2(1−w22)Eavg+(i−3)Vi+wpnpV' = \frac{(1+w_2)F_{avg} + 2\left(1-\frac{w_2}{2}\right)E_{avg} + (i-3)V}{i} + w_p n_p Repositions old corner points using a blended average of surrounding face points and edge points, weighted by valence ii. Keeps part of the original position (i−3)V( i − 3 ) V, then pushes outward by wpw_p ​ .
Animation of the column form shifting as the subdivision weights w-f, w-1, w-e, w-p and w-2 are manipulated.
06 / 07
06
Manipulating the values wfw_f, w1w_1, wew_e, wpw_p, w2w_2 to get different results.
Working drawing of the segmented 3D-printed sand moulds, the steel reinforcement cage set inside them, and the load transfer detail at the column base.
07 / 07
07
The molds were produced using a 3D sand printer, and a steel reinforcement cage was inserted into the assembled mold to improve structural integrity. Concrete was then poured into the mold and left for a few days to cure and solidify.
End of Gallery
Work 02
The Kagome canopy over the Tartus train station passenger waiting area, its timber lattice collapsing into funnel-shaped supports.
2023Tartus, Syria

Tartus Train Station Kagome Canopy

From Hexagram Tiling to Funnel Shell

A timber canopy over the passenger waiting area of Tartus train station, 5.3 m at its highest point. The structure derives from a flat Kagome lattice: a hexagon subdivided to its centroid, reduced to a hexagram, then tiled across a plane on two lattice vectors. That planar grid is mapped onto a funnel surface in cylindrical coordinates, with an exponential decay function driving the vertical collapse — so the roof plane and its supports are the same continuous lattice, not a roof resting on columns.

Every member is doubly curved and individually unique. The geometry was unrolled into flat profiles and cut on a 3-axis CNC router from Oak, then assembled on site.

Medium / materials

Oak, CNC-cut timber frame

Dimensions

Canopy height 5.3 m · Span 15 m · Member profile 50 × 150 mm · Member count 684

Algorithm

Geodesic projection

Fabrication

3-axis CNC router

Software

HoudiniVEX
Gallery
Diagram dividing a hexagon into triangles by drawing a line from each corner to the centroid.
01 / 04
01
Star(P)={C Pi‾  |  i∈[0,N),C=1N∑i=0N−1Pi}\text{Star}(P) = \left\{ \overline{\mathbf{C}\,\mathbf{P}_i} \;\middle|\; i \in [0, N), \quad \mathbf{C} = \frac{1}{N}\sum_{i=0}^{N-1}\mathbf{P}_i \right\} Divides a hexagon by connecting its corners to the center.
Diagram inscribing smaller triangles inside the larger ones and deleting the surplus lines to leave a hexagram.
02 / 04
02
Created small triangles inside the bigger ones, deleted extra lines to get the hexagram.
Diagram tiling the hexagram across a plane on two lattice vectors to build a triangular Kagome grid.
03 / 04
03
Pmn=m a1+n a2\mathbf{P}_{mn} = m\,\mathbf{a}_1 + n\,\mathbf{a}_2 The star is repeated and tiled across a plane using the earlier centroid equation to anchor each instance, forming a triangular lattice / Kagome grid .
04 / 04
04
P′=(rcos⁡θrsin⁡θf(r)),f(r)=−α⋅e−βr\mathbf{P}' = \begin{pmatrix} r\cos\theta \\ r\sin\theta \\ f(r) \end{pmatrix}, \qquad f(r) = -\alpha \cdot e^{-\beta r} Each lattice point is remapped onto a funnel surface via cylindrical coordinates, where f(r)f(r) drives the vertical collapse.
End of Gallery
Process

Process Documentation

Sketches, working drawings and process stills from both works.

  • Process still: a simple primitive stepping through successive subdivisions into a complex column form.
    Subdivision growth — simple primitive to finished column profile.
  • Process still: the column form shifting as the five subdivision weights are manipulated.
    Parameter study — sweeping the five subdivision weights.
  • Working drawing: segmented moulds A and B, the assembled mould with the steel reinforcement cage inside, and base load-transfer details.
    Working drawing — segmented sand moulds, reinforcement cage and load transfer to base.
  • A 3-axis CNC router milling a curved timber member, with stacked billets and finished curved members alongside.
    3-axis CNC router cutting the curved timber members.