Wallniche in curved Walls

Home Forums Problems and solutions in GDL Doors and windows Wallniche in curved Walls

Viewing 1 reply thread
  • Author
    Posts
    • #18279
      Joachim Sühlo
      Participant

      Is it possible to use a WALLNICHE in a curved wall, which means that the niche created by the WALLNICHE
      is curved as well?
      There shall be some kind of window surrounds which shall cut away a part of the wall surface parallel to the wall.
      If this it not possible with WALLNICHE, is there another solution?

      GDL Object Developer
      b-prisma
      MAC OSx 10.14

    • #18321
      Péter Baksa
      Keymaster

      Hi Joachim,

      Yes, it is possible. ROTX -90, then cut with a crescent-shaped polygon.
      For example, this cuts a niche when placed properly (you’d have to handle left and right curved walls, and flipped/mirrored state too):

      hotspot 0,0,0
      rotx -90
      
      _wallRadius		= sqr(WIDO_ORIG_DIST **2 + A **2 / 4) 
      
      dict _arcCenter
      _arcCenter.x		= 0
      _arcCenter.y		= -WIDO_ORIG_DIST
      
      ! surface of wall
      dict _faceCircle
      _faceCircle.center	= _arcCenter
      _faceCircle.radius	= _wallRadius - WIDO_SILL
      
      ! chord at window plane
      dict _chord
      _chord.points[1].x = -A/2
      _chord.points[1].y = 0.0
      _chord.points[2].x = A/2
      _chord.points[2].y = 0.0
      
      ! project points of chord to _faceCircle, from _arcCenter centrally
      dict _faceArc
      call "BasicGeometry" parameters iFunction	= 18,		! BasicGeometry.PROJECT_POINTS_CIRCLE_2D
      				points2D	= _chord,
      				pointFrom	= _arcCenter,
      				circleA		= _faceCircle,
      			returned_parameters	_faceArc! should have exactly 1 intersection
      
      hotspot _arcCenter.x,		_arcCenter.y,		0
      hotspot _faceArc.points[1].x,	_faceArc.points[1].y,	0
      hotspot _chord.points[1].x,	_chord.points[1].y,	0
      hotspot _faceArc.points[2].x,	_faceArc.points[2].y,	0
      hotspot _chord.points[2].x,	_chord.points[2].y,	0
      
      put _arcCenter.x,		_arcCenter.y + _wallRadius,		1+4+8+16+64
      put _arcCenter.x,		_arcCenter.y,				931
      put _chord.points[1].x,		_chord.points[1].y,			3031
      put _faceArc.points[1].x,	_faceArc.points[1].y,			31
      put _arcCenter.x,		_arcCenter.y + _faceCircle.radius,	0
      
      resol WALL_RESOL
      
      wallniche	NSP / 3, 1, 2,							! n, method, status
      		0, 0, 1,							! rx, ry, rz
      		B,								! d
      		use(NSP)							! x, y, s
      mulx -1
      wallniche	NSP / 3, 1, 2,							! n, method, status
      		0, 0, 1,							! rx, ry, rz
      		B,								! d
      		get(NSP)							! x, y, s
      del 1

      Péter Baksa
      Library Platform, Software Engineer
      GRAPHISOFT SE

Viewing 1 reply thread
  • The forum ‘Doors and windows’ is closed to new topics and replies.