Thanks Pat and thanks Josh for the answers.
Sorry for the lack of information. Josh understood what I wanted. I can't do SDK programming. Is there no plug-in for 3D control items to download or buy? Similar to the rectangle plug-in. (But change in 3 D with the mouse)
Attached to the attempt of a script to draw the furniture fronts. (Including joints) And the right screenshots. So far it works well. I just want the fronts e.g. like to edit with the mouse in the front view. And if possible, grab at the corner points (incl. Gap dimension) and push bigger and smaller.
Thanks Günther Sedlmeier
{Rahmentüre 3D von Günther}
PROCEDURE Rahmentuere;
{Variablen Festlgen}
VAR
LH,LB :Real;
FrontB,FrontH :Real;
FB,FUED,TD :Real;
LinksUntenLichteX,LinksUntenLichteY :Real;
LinksUntenFrontX,LinksUntenFrontY :Real;
FFL,FFR,FFU,FFO :Real;
objname,Front :STRING;
glatt: Boolean;
oh,rh,wh,H :HANDLE;
BEGIN
{vordefinierte Parameterwerte abrufen(Durch das Rechteck definiert}
{result:= GetCustomObjectInfo(objname,oh,rh,wh);}
IF GetCustomObjectInfo(objname,oh,rh,wh) then BEGIN
{Wenn Objektinformationen erfolgreich abgerufen wurden}
{IF result THEN BEGIN}
{Vordefinierte Parameterwerte abrufen}
{Boxwidth und Linelength= Türbreite und Höhe werden bei Abfrage nicht angezeigt,
da sie mit den fixen Worten boxwidth und linelength über VW festgelegt sind}
LH :=PBOXWIDTH;
LB :=PLINELENGTH;
{Benutzerdefinierte Objektinformationen abrufen}
FB := PFriesbreite;
FUED :=PFuellungsdicke;
TD :=PTuerdicke;
FFL :=PFrontfugeL;
FFR :=PFrontfugeR;
FFU :=PFrontfugeU;
FFO :=PFrontfugeO;
glatt:=Pglatt;
{Nullpunkt Lichte festlegen}
LinksUntenLichteX:=0;
LinksUntenLichteY:=LH/2;
{Front Nullpunkt festlgen}
LinksUntenFrontX :=LinksUntenLichteX+FFL;
LinksUntenFrontY :=-LinksUntenLichteY+FFU;
{Frontbreite, Fronthöhe festlgen}
FrontB:= LB-FFL-FFR;
FrontH:= LH/2-FFU-FFO;
{Macht jezt Tiefenörper auf Grundebene}
If glatt then begin
{Macht glatte Türe}
BeginXtrd (0 , TD);
Rect(LinksUntenFrontX,LinksUntenFrontY,LinksUntenFrontX+FrontB,FrontH);
EndXtrd ;
end {In IF then Else schleife kein ; bei end)}
Else begin
{Macht Rahmentüren}
BeginXtrd (0 , TD);
{Versuch einfach 2. Rechteck für 2. Tiefenkörper}
{Linkes senrechtes Fries}
Rect(LinksUntenFrontX,LinksUntenFrontY,LinksUntenFrontX+FB,FrontH);
{Rechtes Fries senrechtes Fries}
Rect(LinksUntenFrontX+FrontB-FB,LinksUntenFrontY,LinksUntenFrontX+FrontB,FrontH);
{Unteres Fries waagrechtes Fries}
Rect(LinksUntenFrontX+FB,LinksUntenFrontY,LinksUntenFrontX+FrontB-FB,LinksUntenFrontY+FB);
{Oberes Fries waagrechtes Fries}
Rect(LinksUntenFrontX+FB,FrontH-FB,LinksUntenFrontX+FrontB-FB,FrontH);
EndXtrd ;
Ungroup ;
BeginXtrd (0 , FUED);
{Füllung}
Rect(LinksUntenFrontX+FB,LinksUntenFrontY+FB,LinksUntenFrontX+FrontB-FB,FrontH-FB);
End;
End;
End;
Run(Rahmentuere);