Péter Baksa

Forum Replies Created

Viewing 15 posts - 121 through 135 (of 224 total)
  • Author
    Posts
  • in reply to: Area of a fill / prism #4715
    Péter Baksa
    Keymaster

    In Archicad yes, a fill can display its area, and IES can list the surface of an object.
    In GDL no, you have to calculate it. If the polygon contains no holes, and only straight edges, the Shoelace formula is simple to code.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Forward Migration #4714
    Péter Baksa
    Keymaster

    Hi,

    If I understand right, you are placing a new element in the new AC version. Element defaults aren’t migrated this way, only placed elements. The settings dialog doesn’t store the parameters of the default object, just reads the actual default values from the library. Favorites I think should be migrated.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: REVOLVEDSHELL resolution #4710
    Péter Baksa
    Keymaster

    Maybe REVOLVEDSHELLANGULAR{2} with status 2?

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Profile in GDL #4701
    Péter Baksa
    Keymaster

    Hi all, some basic tutorial about profiles is available at other docs. They’re not covering all details, but a good point to start.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: REVOLVEDSHELL resolution #4680
    Péter Baksa
    Keymaster

    Hi, try REVOLVEDSHELLANGULAR. Does it do what you need?

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: SPLIT #4679
    Péter Baksa
    Keymaster

    SPLIT can only process numbers delimited with whitespace.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Status code: sharp to smooth #4678
    Péter Baksa
    Keymaster

    You have to set the material on each edge, 0 uses the current pen. Yes, side_material looks redundant, I don’t know why it is there.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Status code: sharp to smooth #4668
    Péter Baksa
    Keymaster

    Hi,

    the trick is CPRISM_{3} with mask 8.

    CPRISM_{3} 0, 0, 0,
    		8, 7, 1,
    		0,	0,	0, 15,		0,
    		0,	1,	0, 15,		0,
    		0.25,	1,	0, 15,		0,
    		0.5,	1,	0, 900,		0,
    		0,	180,	0, 4015,	0,
    		1,	1,	0, 15,		0,
    		1,	0,	0, 15,		0

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Where to download ArchiCAD Tools Standard Icons? #4663
    Péter Baksa
    Keymaster

    Maybe support can help, I doubt it is an existing package.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Where to download ArchiCAD Tools Standard Icons? #4660
    Péter Baksa
    Keymaster

    Hi,

    these icons are not part of the library, they are built-in resources of ARCHICAD. They are not in the SDK’s either.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Access to Minimum Space with GDL #4637
    Péter Baksa
    Keymaster

    HI Chris,

    GDL objects only know about themselves (there are some global variables and REQUESTS to get info about parent objects).
    You can manipulate the parameter values in the parameter script using the PARAMETERS command. But be aware that the parameter script is only run after user input – changing a setting, placing a new instance.

    The library MVO approach is good if you write your own set of objects that read the settings written by you. You can’t add new MVO settings to control the ArchiCAD Library.

    If you need to change the behaviour of the shipped ArchiCAD library programmatically, you will need to write an Add-on in C++ using the ARCHICAD API.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Project2{4} unclear #4619
    Péter Baksa
    Keymaster

    Hi,

    You can define the number of horizontal cutplanes and their heights relative to the object 0 in the project2{4} command.
    These cutplanes cut the space into n+1 parts.
    For each part, the projection method (wireframe/shaded/…, fill/line attribute overrides), visible parts’ flags (cut/viewed – polygons/edges), and attributes (cut/projected – fills/lines) are needed.

    Suppose you need a projection with visible, cut and overhead attributes: define one cutplane.
    The bottom part (bottom to cutplane) will have cut and viewed parts, with visible attributes for the projected parameters, and cut attributes for the cut parameters.
    The upper part (cutplane to top) will only need a viewed part, with overhead attributes for the projected parameters. and all 0 (or anything) for the cut parameters.

    I hope this helps.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Detecting Line Intersection #4618
    Péter Baksa
    Keymaster

    Hi,

    There is a call (gosub) to “LineLineIntersection” in the 3D script. The input variables are set up before the call.

    vx, vy is computed from two points (_intersectEdge[1] and _intersectEdge[2]) on the line, divided by the distance of the two points:

    	! line 1
    	vx1 = (_intersectEdge[2][1] - _intersectEdge[1][1]) / _intersectEdgeLength
    	vy1 = (_intersectEdge[2][2] - _intersectEdge[1][2]) / _intersectEdgeLength

    px, py is any point on the line:

    	px1 = _intersectEdge[1][1]
    	py1 = _intersectEdge[1][2]

    This is done again for the second line:

    	! line 2
    	vx2 = (_intersectEdgeLeft[2][1] - _intersectEdgeLeft[1][1]) / _intersectEdgeLeftLength
    	vy2 = (_intersectEdgeLeft[2][2] - _intersectEdgeLeft[1][2]) / _intersectEdgeLeftLength
    	px2 = _intersectEdgeLeft[1][1]
    	py2 = _intersectEdgeLeft[1][2]

    The result intersection is ipx, ipy, when state = 1 (otherwise the lines are parallel):

    	gosub "LineLineIntersection"	! returns ipx, ipy, state
    	if state <> 0 then
    		_intersectPtLeft[1] = ipx
    		_intersectPtLeft[2] = ipy
    	endif

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Issue with label and surface override #4610
    Péter Baksa
    Keymaster

    Hi,

    This forum is only read by a few GDL programmers. If you need official GS response on this issue, please communicate your ideas directly to support. If you want to discuss it with a broader range of users, take it to the AC-talk forum.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

    in reply to: Detecting Line Intersection #4603
    Péter Baksa
    Keymaster

    Yes, have a look at “basicStairTread_m” 3D script.

    Péter Baksa
    Library Platform, Software Engineer
    GRAPHISOFT SE

Viewing 15 posts - 121 through 135 (of 224 total)