Ton bloc notes
Derniers sujets
» [ SKETCHUP généralité ] Tête de pilastre
par Lionscov Hier à 21:37
» [ ARCHICAD ] Paramétrage des coupes sur Archicad
par AK40Cess Hier à 14:12
» [ CHALLENGE 2024 ] résultats du challenge
par AK40Cess Mer 20 Nov 2024 - 13:27
» [ FORUM ] astuce pour insérer facilement un tableau sur le forum
par tenrev Mer 20 Nov 2024 - 9:12
» [ SKETCHUP plugins ] une barre d’outils perso
par tenrev Lun 18 Nov 2024 - 15:05
» [ SKETCHUP généralité ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:46
» [ SKETCHUP tutos ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:45
» [ SKETCHUP tutos ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:44
» [ SKETCHUP tutos ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:43
» ColorMaker par Didier Bur[ SKETCHUP plugins ]
par JDD Dim 17 Nov 2024 - 20:56
» [ ARCHICAD ] Plus de format *atl dans Archicad
par Coulou Jeu 14 Nov 2024 - 8:26
» [ SKETCHUP tutos ] Créer des Bibliothèques et des livres aléatoires Facilement (2 Méthodes!)
par tenrev Mar 12 Nov 2024 - 11:31
» [ CHALLENGE 2024 ] les images finales du challenge
par tenrev Lun 11 Nov 2024 - 15:35
» [ SKETCHUP composants dynamiques ] Formule IF
par Samuel MATHIEU Jeu 7 Nov 2024 - 21:12
» [ Challenge 2024] cHallenge archjtexture exterieur ou paysagiste-vick-sketchup-enscape
par vick Jeu 7 Nov 2024 - 10:23
» [ SKETCHUP vray ]
par tenrev Mar 5 Nov 2024 - 21:19
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste- Gaspard Hauser - Sketchup - D5 render
par tenrev Mar 5 Nov 2024 - 10:22
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - JDD - SketchUp - Enscape
par tenrev Mar 5 Nov 2024 - 10:10
» [ ARCHICAD ] Murs paramétriques
par Coulou Lun 28 Oct 2024 - 10:28
» [ SKETCHUP généralité ] Aide pour SKP 2017
par PEGASE Sam 26 Oct 2024 - 18:36
» [ ARCHICAD ] Ajouter du lambris sur un mur
par Coulou Jeu 24 Oct 2024 - 10:43
» [ SKETCHUP généralité ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:13
» [ SKETCHUP tutos ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:11
» [ D5_RENDER] Petit exemple "hors sujet" ... D5
par Gaspard Hauser Mar 22 Oct 2024 - 19:59
» [ MATOS INFORM. ] [WINDOWS] Miniatures de prévisualisation pour les fichiers de modèle 3D au format .OBJ, .FBX, .STL, .3DS et +
par Gaspard Hauser Mar 22 Oct 2024 - 19:49
» [ SKETCHUP Layout ] Symboles Électriques sur Layout
par JDD Jeu 17 Oct 2024 - 9:44
» [ ARCHICAD ] gardes corps et profils complexe ?
par Christophe Fortineau Lun 14 Oct 2024 - 12:10
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - allansens - cinema 4D
par Allansens Sam 12 Oct 2024 - 13:53
» [ ARTLANTIS ] Ca donne envie !
par Gaspard Hauser Jeu 10 Oct 2024 - 10:00
» [ TWINMOTION ] Unreal Engine déménage sur Fab - DataSmith & Archicad
par Coulou Jeu 10 Oct 2024 - 9:03
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - AK40Cess - Archicad-Twinmotion
par Coulou Mar 8 Oct 2024 - 11:53
» [ TWINMOTION ] Unreal Engine déménage sur Fab - Assets de Megascan
par JDD Lun 7 Oct 2024 - 21:52
» [ CHALLENGE ARCHITECTURE EXTERIEURE OU PAYSAGISTE ] Démarrage du challenge 2024 - les régles
par tenrev Jeu 3 Oct 2024 - 14:58
par Lionscov Hier à 21:37
» [ ARCHICAD ] Paramétrage des coupes sur Archicad
par AK40Cess Hier à 14:12
» [ CHALLENGE 2024 ] résultats du challenge
par AK40Cess Mer 20 Nov 2024 - 13:27
» [ FORUM ] astuce pour insérer facilement un tableau sur le forum
par tenrev Mer 20 Nov 2024 - 9:12
» [ SKETCHUP plugins ] une barre d’outils perso
par tenrev Lun 18 Nov 2024 - 15:05
» [ SKETCHUP généralité ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:47
» [ SKETCHUP généralité ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:46
» [ SKETCHUP tutos ] Orienter 1 Face, 1 Profil Normal (Perpendiculaire) à 1 Arête, 1 Trajectoire
par jerryvento Lun 18 Nov 2024 - 14:45
» [ SKETCHUP tutos ] Modéliser facilement 1 spirale en moins de 40 secondes
par jerryvento Lun 18 Nov 2024 - 14:44
» [ SKETCHUP tutos ] Modélise 1 Forme Hélicoïdale, en forme de spirale : main courante, rampe d'accès voitures...
par jerryvento Lun 18 Nov 2024 - 14:43
» ColorMaker par Didier Bur[ SKETCHUP plugins ]
par JDD Dim 17 Nov 2024 - 20:56
» [ ARCHICAD ] Plus de format *atl dans Archicad
par Coulou Jeu 14 Nov 2024 - 8:26
» [ SKETCHUP tutos ] Créer des Bibliothèques et des livres aléatoires Facilement (2 Méthodes!)
par tenrev Mar 12 Nov 2024 - 11:31
» [ CHALLENGE 2024 ] les images finales du challenge
par tenrev Lun 11 Nov 2024 - 15:35
» [ SKETCHUP composants dynamiques ] Formule IF
par Samuel MATHIEU Jeu 7 Nov 2024 - 21:12
» [ Challenge 2024] cHallenge archjtexture exterieur ou paysagiste-vick-sketchup-enscape
par vick Jeu 7 Nov 2024 - 10:23
» [ SKETCHUP vray ]
par tenrev Mar 5 Nov 2024 - 21:19
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste- Gaspard Hauser - Sketchup - D5 render
par tenrev Mar 5 Nov 2024 - 10:22
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - JDD - SketchUp - Enscape
par tenrev Mar 5 Nov 2024 - 10:10
» [ ARCHICAD ] Murs paramétriques
par Coulou Lun 28 Oct 2024 - 10:28
» [ SKETCHUP généralité ] Aide pour SKP 2017
par PEGASE Sam 26 Oct 2024 - 18:36
» [ ARCHICAD ] Ajouter du lambris sur un mur
par Coulou Jeu 24 Oct 2024 - 10:43
» [ SKETCHUP généralité ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:13
» [ SKETCHUP tutos ] 1 Citrouille à imprimer pour Halloween
par jerryvento Jeu 24 Oct 2024 - 8:11
» [ D5_RENDER] Petit exemple "hors sujet" ... D5
par Gaspard Hauser Mar 22 Oct 2024 - 19:59
» [ MATOS INFORM. ] [WINDOWS] Miniatures de prévisualisation pour les fichiers de modèle 3D au format .OBJ, .FBX, .STL, .3DS et +
par Gaspard Hauser Mar 22 Oct 2024 - 19:49
» [ SKETCHUP Layout ] Symboles Électriques sur Layout
par JDD Jeu 17 Oct 2024 - 9:44
» [ ARCHICAD ] gardes corps et profils complexe ?
par Christophe Fortineau Lun 14 Oct 2024 - 12:10
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - allansens - cinema 4D
par Allansens Sam 12 Oct 2024 - 13:53
» [ ARTLANTIS ] Ca donne envie !
par Gaspard Hauser Jeu 10 Oct 2024 - 10:00
» [ TWINMOTION ] Unreal Engine déménage sur Fab - DataSmith & Archicad
par Coulou Jeu 10 Oct 2024 - 9:03
» [ CHALLENGE 2024 ] Challenge architecture extérieure ou paysagiste - AK40Cess - Archicad-Twinmotion
par Coulou Mar 8 Oct 2024 - 11:53
» [ TWINMOTION ] Unreal Engine déménage sur Fab - Assets de Megascan
par JDD Lun 7 Oct 2024 - 21:52
» [ CHALLENGE ARCHITECTURE EXTERIEURE OU PAYSAGISTE ] Démarrage du challenge 2024 - les régles
par tenrev Jeu 3 Oct 2024 - 14:58
formulaire/diaporama
chaine sketchup.tv
Serveur Discord
GDL : conflit Xrotang / stStyle
Page 1 sur 1 • Partagez
- FarkasAdministrateurs
- Humeur : C'est bon le sirop d'érable
Date d'inscription : 29/11/2012
Nombre de messages : 4422
Points : 8672
Age : 38
Localisation : Canada
Emploi : Architecte
Bonjour
J'ai édité l'objet grille de la bib standard pour en faire un caillebotti, aquel je souhaiterais ajouter les paramètres Xrotang, Yrotang. Le truc c'est que le script ne fonctionne pas. J'ai beau introduire des valeurs non nulles, ça ne change l'inclinaison de l'objet en 3D.
Je soupçonne un conflit avec la variable stStyle... Je souhaiterais supprimer les lignes de code qui y sont liées. Quelqu'un pourrait-il me dire quelles lignes il faut supprimer ?
Script 3D :
Merci(lk) d'avance
J'ai édité l'objet grille de la bib standard pour en faire un caillebotti, aquel je souhaiterais ajouter les paramètres Xrotang, Yrotang. Le truc c'est que le script ne fonctionne pas. J'ai beau introduire des valeurs non nulles, ça ne change l'inclinaison de l'objet en 3D.
Je soupçonne un conflit avec la variable stStyle... Je souhaiterais supprimer les lignes de code qui y sont liées. Quelqu'un pourrait-il me dire quelles lignes il faut supprimer ?
Script 3D :
- Code:
RotX Xrotang
RotY Yrotang
RotZ Zrotang
DEL 3
gs_fill_type = gs_fill_type * gs_bFills
gs_fill_pen = gs_fill_pen * gs_bFills
gs_back_pen = gs_back_pen * gs_bFills
gs_fillGlass = gs_fillGlass * gs_bFills
gs_penGlass_fg = gs_penGlass_fg * gs_bFills
gs_penGlass_bg = gs_penGlass_bg * gs_bFills
gs_fillSdl = gs_fillSdl * gs_bFills
gs_penSdl_fg = gs_penSdl_fg * gs_bFills
gs_penSdl_bg = gs_penSdl_bg * gs_bFills
if gs_detlevel_3D_m = 0 then end
if not(gs_shadow) then shadow off
unID = 1
pen gs_cont_pen
gosub iStyle
end
! =============================================================================
! SUBRUTINES
!
! =============================================================================
! -----------------------------------------------------------------------------
! Vertical
! -----------------------------------------------------------------------------
2:
material gs_frame_mat
sect_fill gs_fill_type, gs_back_pen, gs_fill_pen, gs_cont_pen
rotx 90
addz -B
gosub 200
if u <= 0 or w <= 0 then
addz yCoordEdges[1]
prism_ 5, -yCoordEdges[1] + yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, -1
del 1
end
endif
gs_SashText_typ = `Type 1`
put xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
! -------------------------------------------------------------------------
if gs_SashText_typ = `Type 1` then
base
prism_ 4+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesB-2)*6+12)
prism_ 4+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesB-2)*6+12)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 4+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesA-2)*6+12)
prism_ 4+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesA-2)*6+12)
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
if gs_SashText_typ = `Type 2` then
base
prism_ 6+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
prism_ 6+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 6+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15
prism_ 6+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
! --- Both in type1 and type 2 / inner grids ---
for ij = 2 to iNumFramesA-1
for kj = 2 to iNumFramesB-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
for kj = iNumFramesB-1 to 2 step -1
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]-thickFrame/2, 15
next kj
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
if iNumFramesA > 2 then parn = (nsp/3)/(iNumFramesA-2) else parn = 0
if iNumFramesA > 2 then outst = nsp/(iNumFramesA-2) else outst = 0
for ij = 2 to iNumFramesA-1
base
prism_ parn,-yCoordEdges[1]+yCoordEdges[2],
get(outst)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
next ij
for ij = 1 to iNumFramesA-1
if ij = 1 or ij = iNumFramesA-1 then
if ij = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickEdge
endif
else
dx1 = thickFrame
dx2 = thickFrame
endif
for kj = 2 to iNumFramesB-1
base
prism_ 4,-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]+thickFrame/2, 15,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]-thickFrame/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
next kj
next ij
for o = 1 to iNumFramesA-1 step 1
for e = 1 to iNumFramesB-1 step 1
if o = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickFrame
endif
if o = iNumFramesA-1 then
dx1 = thickFrame
dx2 = thickEdge
endif
if e = 1 then
dy1 = thickEdge
dy2 = thickFrame
else
dy1 = thickFrame
dy2 = thickFrame
endif
if e = iNumFramesB-1 then
dy1 = thickFrame
dy2 = thickEdge
endif
put xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,-1
next e
next o
if ifx1 = 0 then
mask1 = 13
mask4 = 8
else
mask1 = 15
mask4 = 15
endif
if ifx2 = 0 then
mask2 = 8
mask3 = 13
else
mask2 = 15
mask3 = 15
endif
addz yCoordEdges[1]
body 1
if bFilling <> 0 then
material gs_glass_mat
sect_fill gs_fillGlass, gs_penGlass_bg, gs_penGlass_fg, gs_cont_pen
r = (iNumFramesA-1)*(iNumFramesB-1)
addz (yCoordEdges[2]-yCoordEdges[1]-thickFilling)/2
for k = 1 to r step 1
prism_ 5, thickFilling,
get (15)
next k
body 1
del 1
endif
del 3
return
! -----------------------------------------------------------------------------
! Horizontal
! -----------------------------------------------------------------------------
1:
material gs_frame_mat
sect_fill gs_fill_type, gs_back_pen, gs_fill_pen, gs_cont_pen
if u <= 0 or w <= 0 then
prism_ 5, zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, -1
end
endif
gosub 100
gs_SashText_typ = `Type 1`
put xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
! -------------------------------------------------------------------------
if gs_SashText_typ = `Type 1` then
base
prism_ 4+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesB-2)*6+12)
prism_ 4+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesB-2)*6+12)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 4+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesA-2)*6+12)
prism_ 4+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesA-2)*6+12)
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
if gs_SashText_typ = `Type 2` then
base
prism_ 6+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
prism_ 6+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 6+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15
prism_ 6+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
! --- Both in type1 and type 2 / inner grids ---
for ij = 2 to iNumFramesA-1
for kj = 2 to iNumFramesB-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
for kj = iNumFramesB-1 to 2 step -1
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]-thickFrame/2, 15
next kj
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
if iNumFramesA > 2 then parn = (nsp/3)/(iNumFramesA-2) else parn = 0
if iNumFramesA > 2 then outst = nsp/(iNumFramesA-2) else outst = 0
for ij = 2 to iNumFramesA-1
base
prism_ parn,zCoordEdges[2]-zCoordEdges[1],
get(outst)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
next ij
for ij = 1 to iNumFramesA-1
if ij = 1 or ij = iNumFramesA-1 then
if ij = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickEdge
endif
else
dx1 = thickFrame
dx2 = thickFrame
endif
for kj = 2 to iNumFramesB-1
base
prism_ 4,zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]+thickFrame/2, 15,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]-thickFrame/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
next kj
next ij
for o = 1 to iNumFramesA-1 step 1
for e = 1 to iNumFramesB-1 step 1
if o = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickFrame
endif
if o = iNumFramesA-1 then
dx1 = thickFrame
dx2 = thickEdge
endif
if e = 1 then
dy1 = thickEdge
dy2 = thickFrame
else
dy1 = thickFrame
dy2 = thickFrame
endif
if e = iNumFramesB-1 then
dy1 = thickFrame
dy2 = thickEdge
endif
put xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,-1
next e
next o
body 1
if bFilling <> 0 then
material gs_glass_mat
sect_fill gs_fillGlass, gs_penGlass_bg, gs_penGlass_fg, gs_cont_pen
r = (iNumFramesA-1)*(iNumFramesB-1)
addz (zCoordEdges[2]-zCoordEdges[1]-thickFilling)/2
for k = 1 to r step 1
prism_ 5,thickFilling,
get (15)
next k
del 1
endif
return
! -----------------------------------------------------------------------------
! hotspot editing for Horizontal
! -----------------------------------------------------------------------------
100:
for k0 = 1 to 2
for k1 = 1 to 2
hotspot 0, yCoordEdges[k1],zCoordEdges[k0],unID,a,1+256:unID=unID+1
hotspot -1, yCoordEdges[k1],zCoordEdges[k0],unID,a,3 :unID=unID+1
hotspot a, yCoordEdges[k1],zCoordEdges[k0],unID,a,2 :unID=unID+1
next k1
next k0
for k0 = 1 to 2
for k1 = 1 to 2
hotspot a*(k1-1),0,zCoordEdges[k0],unID,b,1+128:unID=unID+1
hotspot a*(k1-1),-1,zCoordEdges[k0],unID,b,3 :unID=unID+1
hotspot a*(k1-1),b,zCoordEdges[k0],unID,b,2 :unID=unID+1
next k1
next k0
for k0 = 1 to 2
for k1 = 1 to 2
hotspot xCoordEdges[k1],yCoordEdges[k0],0,unID,ZZYZX,1+256:unID=unID+1
hotspot xCoordEdges[k1],yCoordEdges[k0],-1,unID,ZZYZX,3 :unID=unID+1
hotspot xCoordEdges[k1],yCoordEdges[k0],ZZYZX,unID,ZZYZX,2 :unID=unID+1
next k1
next k0
xCoordFrames[1] = xCoordEdges[1] + thickEdge/2
xCoordFrames[iNumFramesA] = xCoordEdges[2] - thickEdge/2
yCoordFrames[1] = yCoordEdges[1] + thickEdge/2
yCoordFrames[iNumFramesB] = yCoordEdges[2] - thickEdge/2
for k = 2 to iNumFramesA-1
hotspot 0,yCoordFrames[1],(zCoordEdges[2]-zCoordEdges[1])/2,unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1,yCoordFrames[1],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[1],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 2 :unID=unID+1
hotspot 0,yCoordFrames[iNumFramesB],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1,yCoordFrames[iNumFramesB],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[iNumFramesB],(zCoordEdges[2]-zCoordEdges[1])/2,unID, xCoordFrames[k], 2 :unID=unID+1
next k
for k = 2 to iNumFramesB-1
hotspot xCoordFrames[1],0,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[1],-1,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[1],yCoordFrames[k],(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 2 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],0,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],-1,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],yCoordFrames[k],(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 2 :unID=unID+1
next k
return
! -----------------------------------------------------------------------------
! hotspot editing for Vertical
! -----------------------------------------------------------------------------
200:
for k0 = 1 to 2
for k1 = 1 to 2
hotspot 0, zCoordEdges[k0], yCoordEdges[k1], unID, a, 1+256 :unID=unID+1
hotspot -1, zCoordEdges[k0], yCoordEdges[k1], unID, a, 3 :unID=unID+1
hotspot a, zCoordEdges[k0], yCoordEdges[k1], unID, a, 2 :unID=unID+1
next k1
next k0
addy ZZYZX
muly -1
for k0 = 1 to 2
for k1 = 1 to 2
hotspot a*(k0-1), 0, yCoordEdges[k1], unID, ZZYZX, 1+256 :unID=unID+1
hotspot a*(k0-1), -1, yCoordEdges[k1], unID, ZZYZX, 3 :unID=unID+1
hotspot a*(k0-1), ZZYZX, yCoordEdges[k1], unID, ZZYZX, 2 :unID=unID+1
next k1
next k0
del 2
for k0 = 1 to 2
for k1 = 1 to 2
hotspot a*(k1-1), ZZYZX, 0, unID, b, 1+256 :unID=unID+1
hotspot a*(k1-1), ZZYZX, -1, unID, b, 3 :unID=unID+1
hotspot a*(k1-1), ZZYZX, b, unID, b, 2 :unID=unID+1
next k1
next k0
xCoordFrames[1] = xCoordEdges[1] + thickEdge/2
xCoordFrames[iNumFramesA] = xCoordEdges[2] - thickEdge/2
yCoordFrames[1] = zCoordEdges[1] + thickEdge/2
yCoordFrames[iNumFramesB] = zCoordEdges[2] - thickEdge/2
for k = 2 to iNumFramesA-1
hotspot 0, yCoordFrames[1],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1, yCoordFrames[1],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[1],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 2 :unID=unID+1
hotspot 0, yCoordFrames[iNumFramesB],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1, yCoordFrames[iNumFramesB],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[iNumFramesB],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 2 :unID=unID+1
next k
for k = 2 to iNumFramesB-1
hotspot xCoordFrames[1], 0,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[1], -1,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[1],yCoordFrames[k],(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 2 :unID=unID+1
hotspot xCoordFrames[iNumFramesA], 0,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[iNumFramesA], -1,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],yCoordFrames[k],(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 2 :unID=unID+1
next k
return
Merci(lk) d'avance
Dernière édition par Farkas le Lun 30 Mai 2016 - 5:49, édité 2 fois
-------------------------------------------------------------------------------------------------------------------------
Farkas se prononce fɔʁkɔʃ
HackBook Pro -- MSI GP72VR 7RF -- Intel i7 7700HG -- Intel HD630 + GTX 1060 (4Go) -- Mac OS 11.5 / Windows 10
Alienware x17 R2 -- Intel i7 12700H -- 64 Go -- RTX 3080 Ti -- Windows 11
Le del 3 de ta ligne 5 ( une ligne vide compte pour 1) annulé les 3 modifications de coordonnées précédentes. .. Il doit donc être placé après les lignes de script qui créent la 3d. La tu te deplaces, tu reviens à ton point de départ et ensuite tu crées ta 3d... normal que ça ne change rien
-------------------------------------------------------------------------------------------------------------------------
Programmeur et formateur GDL à BIM Services
Président-modélisateur de PatrimoineVirtuel
PC fixe : Windows 10 64bit - I7 6900K 8 cœurs 3.7Ghz - 32Go RAM - Geforce GTX 1070
PC portable : hp ZBook - Windows 10 64bit Pro - I7 7820HQ 4 cœurs 2.9Ghz - 16Go RAM - Quatro M1200
ArchiCAD 10 à 20 - GDL - AutoCAD 2D
- FarkasAdministrateurs
- Humeur : C'est bon le sirop d'érable
Date d'inscription : 29/11/2012
Nombre de messages : 4422
Points : 8672
Age : 38
Localisation : Canada
Emploi : Architecte
J'ai donc replacé le DEL3 à la fin de la première partie comme ceci et ça semble fonctionner !Silk37 a écrit:Le del 3 de ta ligne 5 ( une ligne vide compte pour 1) annulé les 3 modifications de coordonnées précédentes. .. Il doit donc être placé après les lignes de script qui créent la 3d. La tu te deplaces, tu reviens à ton point de départ et ensuite tu crées ta 3d... normal que ça ne change rien
- Code:
RotX Xrotang
RotY Yrotang
RotZ Zrotang
gs_fill_type = gs_fill_type * gs_bFills
gs_fill_pen = gs_fill_pen * gs_bFills
gs_back_pen = gs_back_pen * gs_bFills
gs_fillGlass = gs_fillGlass * gs_bFills
gs_penGlass_fg = gs_penGlass_fg * gs_bFills
gs_penGlass_bg = gs_penGlass_bg * gs_bFills
gs_fillSdl = gs_fillSdl * gs_bFills
gs_penSdl_fg = gs_penSdl_fg * gs_bFills
gs_penSdl_bg = gs_penSdl_bg * gs_bFills
if gs_detlevel_3D_m = 0 then end
if not(gs_shadow) then shadow off
unID = 1
pen gs_cont_pen
gosub iStyle
DEL 3
end
! =============================================================================
! SUBRUTINES
!
! =============================================================================
! -----------------------------------------------------------------------------
! Vertical
! -----------------------------------------------------------------------------
2:
material gs_frame_mat
sect_fill gs_fill_type, gs_back_pen, gs_fill_pen, gs_cont_pen
rotx 90
addz -B
gosub 200
if u <= 0 or w <= 0 then
addz yCoordEdges[1]
prism_ 5, -yCoordEdges[1] + yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, -1
del 1
end
endif
gs_SashText_typ = `Type 1`
put xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
! -------------------------------------------------------------------------
if gs_SashText_typ = `Type 1` then
base
prism_ 4+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesB-2)*6+12)
prism_ 4+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesB-2)*6+12)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 4+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesA-2)*6+12)
prism_ 4+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
get ((iNumFramesA-2)*6+12)
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
if gs_SashText_typ = `Type 2` then
base
prism_ 6+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
prism_ 6+((iNumFramesB-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 6+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15
prism_ 6+((iNumFramesA-2)*2),-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
! --- Both in type1 and type 2 / inner grids ---
for ij = 2 to iNumFramesA-1
for kj = 2 to iNumFramesB-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
for kj = iNumFramesB-1 to 2 step -1
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]-thickFrame/2, 15
next kj
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
if iNumFramesA > 2 then parn = (nsp/3)/(iNumFramesA-2) else parn = 0
if iNumFramesA > 2 then outst = nsp/(iNumFramesA-2) else outst = 0
for ij = 2 to iNumFramesA-1
base
prism_ parn,-yCoordEdges[1]+yCoordEdges[2],
get(outst)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
next ij
for ij = 1 to iNumFramesA-1
if ij = 1 or ij = iNumFramesA-1 then
if ij = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickEdge
endif
else
dx1 = thickFrame
dx2 = thickFrame
endif
for kj = 2 to iNumFramesB-1
base
prism_ 4,-yCoordEdges[1]+yCoordEdges[2],
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]+thickFrame/2, 15,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]-thickFrame/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
next kj
next ij
for o = 1 to iNumFramesA-1 step 1
for e = 1 to iNumFramesB-1 step 1
if o = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickFrame
endif
if o = iNumFramesA-1 then
dx1 = thickFrame
dx2 = thickEdge
endif
if e = 1 then
dy1 = thickEdge
dy2 = thickFrame
else
dy1 = thickFrame
dy2 = thickFrame
endif
if e = iNumFramesB-1 then
dy1 = thickFrame
dy2 = thickEdge
endif
put xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,-1
next e
next o
if ifx1 = 0 then
mask1 = 13
mask4 = 8
else
mask1 = 15
mask4 = 15
endif
if ifx2 = 0 then
mask2 = 8
mask3 = 13
else
mask2 = 15
mask3 = 15
endif
addz yCoordEdges[1]
body 1
if bFilling <> 0 then
material gs_glass_mat
sect_fill gs_fillGlass, gs_penGlass_bg, gs_penGlass_fg, gs_cont_pen
r = (iNumFramesA-1)*(iNumFramesB-1)
addz (yCoordEdges[2]-yCoordEdges[1]-thickFilling)/2
for k = 1 to r step 1
prism_ 5, thickFilling,
get (15)
next k
body 1
del 1
endif
del 3
return
! -----------------------------------------------------------------------------
! Horizontal
! -----------------------------------------------------------------------------
1:
material gs_frame_mat
sect_fill gs_fill_type, gs_back_pen, gs_fill_pen, gs_cont_pen
if u <= 0 or w <= 0 then
prism_ 5, zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, -1
end
endif
gosub 100
gs_SashText_typ = `Type 1`
put xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesB > 2 then
for kj = 2 to iNumFramesB-1
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 10,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
if iNumFramesA > 2 then
for ij = 2 to iNumFramesA-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
next ij
endif
put xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
! -------------------------------------------------------------------------
if gs_SashText_typ = `Type 1` then
base
prism_ 4+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesB-2)*6+12)
prism_ 4+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesB-2)*6+12)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 4+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesA-2)*6+12)
prism_ 4+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
get ((iNumFramesA-2)*6+12)
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
if gs_SashText_typ = `Type 2` then
base
prism_ 6+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
prism_ 6+((iNumFramesB-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesB-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
base
prism_ 6+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]-thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]+thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[1]-thickEdge/2, 15
prism_ 6+((iNumFramesA-2)*2),zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15,
xCoordFrames[1]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 8,
xCoordFrames[1]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15,
get((iNumFramesA-2)*6),
xCoordFrames[iNumFramesA]-thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]-thickEdge/2, 13,
xCoordFrames[iNumFramesA]+thickEdge/2, yCoordFrames[iNumFramesB]+thickEdge/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
endif
! --- Both in type1 and type 2 / inner grids ---
for ij = 2 to iNumFramesA-1
for kj = 2 to iNumFramesB-1
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[kj]+thickFrame/2, 15
next kj
put xCoordFrames[ij]-thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[iNumFramesB]-thickEdge/2, 15
for kj = iNumFramesB-1 to 2 step -1
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij]+thickFrame/2, yCoordFrames[kj]-thickFrame/2, 15
next kj
put xCoordFrames[ij]+thickFrame/2, yCoordFrames[1]+thickEdge/2, 10,
xCoordFrames[ij]-thickFrame/2, yCoordFrames[1]+thickEdge/2, 15
next ij
if iNumFramesA > 2 then parn = (nsp/3)/(iNumFramesA-2) else parn = 0
if iNumFramesA > 2 then outst = nsp/(iNumFramesA-2) else outst = 0
for ij = 2 to iNumFramesA-1
base
prism_ parn,zCoordEdges[2]-zCoordEdges[1],
get(outst)
vert 0, 0, 0
vert 0, 1, 0
vert 0, 0, 1
vert 1, 0, 0
coor 5, -1, -2, -3, -4
body 1
next ij
for ij = 1 to iNumFramesA-1
if ij = 1 or ij = iNumFramesA-1 then
if ij = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickEdge
endif
else
dx1 = thickFrame
dx2 = thickFrame
endif
for kj = 2 to iNumFramesB-1
base
prism_ 4,zCoordEdges[2]-zCoordEdges[1],
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]-thickFrame/2, 10,
xCoordFrames[ij]+dx1/2, yCoordFrames[kj]+thickFrame/2, 15,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]+thickFrame/2, 10,
xCoordFrames[ij+1]-dx2/2, yCoordFrames[kj]-thickFrame/2, 15
vert 0, 0, 0
vert 1, 0, 0
vert 0, 0, 1
vert 0, 1, 0
coor 5, -1, -2, -3, -4
body 1
next kj
next ij
for o = 1 to iNumFramesA-1 step 1
for e = 1 to iNumFramesB-1 step 1
if o = 1 then
dx1 = thickEdge
dx2 = thickFrame
else
dx1 = thickFrame
dx2 = thickFrame
endif
if o = iNumFramesA-1 then
dx1 = thickFrame
dx2 = thickEdge
endif
if e = 1 then
dy1 = thickEdge
dy2 = thickFrame
else
dy1 = thickFrame
dy2 = thickFrame
endif
if e = iNumFramesB-1 then
dy1 = thickFrame
dy2 = thickEdge
endif
put xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e]+dy1/2,15,
xCoordFrames[o+1]-dx2/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e+1]-dy2/2,15,
xCoordFrames[o]+dx1/2,yCoordFrames[e]+dy1/2,-1
next e
next o
body 1
if bFilling <> 0 then
material gs_glass_mat
sect_fill gs_fillGlass, gs_penGlass_bg, gs_penGlass_fg, gs_cont_pen
r = (iNumFramesA-1)*(iNumFramesB-1)
addz (zCoordEdges[2]-zCoordEdges[1]-thickFilling)/2
for k = 1 to r step 1
prism_ 5,thickFilling,
get (15)
next k
del 1
endif
return
! -----------------------------------------------------------------------------
! hotspot editing for Horizontal
! -----------------------------------------------------------------------------
100:
for k0 = 1 to 2
for k1 = 1 to 2
hotspot 0, yCoordEdges[k1],zCoordEdges[k0],unID,a,1+256:unID=unID+1
hotspot -1, yCoordEdges[k1],zCoordEdges[k0],unID,a,3 :unID=unID+1
hotspot a, yCoordEdges[k1],zCoordEdges[k0],unID,a,2 :unID=unID+1
next k1
next k0
for k0 = 1 to 2
for k1 = 1 to 2
hotspot a*(k1-1),0,zCoordEdges[k0],unID,b,1+128:unID=unID+1
hotspot a*(k1-1),-1,zCoordEdges[k0],unID,b,3 :unID=unID+1
hotspot a*(k1-1),b,zCoordEdges[k0],unID,b,2 :unID=unID+1
next k1
next k0
for k0 = 1 to 2
for k1 = 1 to 2
hotspot xCoordEdges[k1],yCoordEdges[k0],0,unID,ZZYZX,1+256:unID=unID+1
hotspot xCoordEdges[k1],yCoordEdges[k0],-1,unID,ZZYZX,3 :unID=unID+1
hotspot xCoordEdges[k1],yCoordEdges[k0],ZZYZX,unID,ZZYZX,2 :unID=unID+1
next k1
next k0
xCoordFrames[1] = xCoordEdges[1] + thickEdge/2
xCoordFrames[iNumFramesA] = xCoordEdges[2] - thickEdge/2
yCoordFrames[1] = yCoordEdges[1] + thickEdge/2
yCoordFrames[iNumFramesB] = yCoordEdges[2] - thickEdge/2
for k = 2 to iNumFramesA-1
hotspot 0,yCoordFrames[1],(zCoordEdges[2]-zCoordEdges[1])/2,unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1,yCoordFrames[1],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[1],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 2 :unID=unID+1
hotspot 0,yCoordFrames[iNumFramesB],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1,yCoordFrames[iNumFramesB],(zCoordEdges[2]-zCoordEdges[1])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[iNumFramesB],(zCoordEdges[2]-zCoordEdges[1])/2,unID, xCoordFrames[k], 2 :unID=unID+1
next k
for k = 2 to iNumFramesB-1
hotspot xCoordFrames[1],0,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[1],-1,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[1],yCoordFrames[k],(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 2 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],0,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],-1,(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],yCoordFrames[k],(zCoordEdges[2]-zCoordEdges[1])/2, unID, yCoordFrames[k], 2 :unID=unID+1
next k
return
! -----------------------------------------------------------------------------
! hotspot editing for Vertical
! -----------------------------------------------------------------------------
200:
for k0 = 1 to 2
for k1 = 1 to 2
hotspot 0, zCoordEdges[k0], yCoordEdges[k1], unID, a, 1+256 :unID=unID+1
hotspot -1, zCoordEdges[k0], yCoordEdges[k1], unID, a, 3 :unID=unID+1
hotspot a, zCoordEdges[k0], yCoordEdges[k1], unID, a, 2 :unID=unID+1
next k1
next k0
addy ZZYZX
muly -1
for k0 = 1 to 2
for k1 = 1 to 2
hotspot a*(k0-1), 0, yCoordEdges[k1], unID, ZZYZX, 1+256 :unID=unID+1
hotspot a*(k0-1), -1, yCoordEdges[k1], unID, ZZYZX, 3 :unID=unID+1
hotspot a*(k0-1), ZZYZX, yCoordEdges[k1], unID, ZZYZX, 2 :unID=unID+1
next k1
next k0
del 2
for k0 = 1 to 2
for k1 = 1 to 2
hotspot a*(k1-1), ZZYZX, 0, unID, b, 1+256 :unID=unID+1
hotspot a*(k1-1), ZZYZX, -1, unID, b, 3 :unID=unID+1
hotspot a*(k1-1), ZZYZX, b, unID, b, 2 :unID=unID+1
next k1
next k0
xCoordFrames[1] = xCoordEdges[1] + thickEdge/2
xCoordFrames[iNumFramesA] = xCoordEdges[2] - thickEdge/2
yCoordFrames[1] = zCoordEdges[1] + thickEdge/2
yCoordFrames[iNumFramesB] = zCoordEdges[2] - thickEdge/2
for k = 2 to iNumFramesA-1
hotspot 0, yCoordFrames[1],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1, yCoordFrames[1],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[1],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 2 :unID=unID+1
hotspot 0, yCoordFrames[iNumFramesB],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 1+128 :unID=unID+1
hotspot -1, yCoordFrames[iNumFramesB],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[k],yCoordFrames[iNumFramesB],(yCoordEdges[1]+yCoordEdges[2])/2, unID, xCoordFrames[k], 2 :unID=unID+1
next k
for k = 2 to iNumFramesB-1
hotspot xCoordFrames[1], 0,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[1], -1,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[1],yCoordFrames[k],(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 2 :unID=unID+1
hotspot xCoordFrames[iNumFramesA], 0,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 1+128 :unID=unID+1
hotspot xCoordFrames[iNumFramesA], -1,(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 3 :unID=unID+1
hotspot xCoordFrames[iNumFramesA],yCoordFrames[k],(yCoordEdges[1]+yCoordEdges[2])/2, unID, yCoordFrames[k], 2 :unID=unID+1
next k
return
Mersilk bien !
-------------------------------------------------------------------------------------------------------------------------
Farkas se prononce fɔʁkɔʃ
HackBook Pro -- MSI GP72VR 7RF -- Intel i7 7700HG -- Intel HD630 + GTX 1060 (4Go) -- Mac OS 11.5 / Windows 10
Alienware x17 R2 -- Intel i7 12700H -- 64 Go -- RTX 3080 Ti -- Windows 11
Y a pas de quoi
-------------------------------------------------------------------------------------------------------------------------
Programmeur et formateur GDL à BIM Services
Président-modélisateur de PatrimoineVirtuel
PC fixe : Windows 10 64bit - I7 6900K 8 cœurs 3.7Ghz - 32Go RAM - Geforce GTX 1070
PC portable : hp ZBook - Windows 10 64bit Pro - I7 7820HQ 4 cœurs 2.9Ghz - 16Go RAM - Quatro M1200
ArchiCAD 10 à 20 - GDL - AutoCAD 2D
- Contenu sponsorisé
Sujets similaires
Créer un compte ou se connecter pour répondre
Vous devez être membre pour répondre.
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum