The mid section
new concepts : half-section templates - visualisation options - link a "half-section" template with "section" templates - automatically generate an intersection of the fuselage with the canopy - simple sub-assy vs. textured sub-assy - polygons of the POLY type - the GLASS instruction - the "sel" button |
The mid section, as we told before, contains the canopy, the fuselage part which stands above the canopy and the pilot's head. The instructions calling for the wing assemblies are inserted in the main code dedicated to the mid section. At the moment, we shall not take the wings into account.
The mid-section is composed of seven sub-assies :
Actually, there are three sub-sections in the medium section : the fore sub-section (one fuselage sub-assy and one canopy sub-assy), the mid sub-section (one fuselage sub-assy, the pilot's head sub-assy and one canopy sub-assy), the aft sub-section (one fuselage sub-assy and one canopy sub-assy).
The canopy is transparent : this feature will make us use the
GLASS instruction. The canopy is built on the basis of a "half-section" class that we shall create right now.create the "half-section" class called "canopy"
To create the "canopy" class, we shall proceed in a similar way as for the "fusetemp" section :
We shall use the templates of this class to generate the canopy.
Aircraft Designer 2000 will automatically calculate the instersection of the canopy with the fuselage. To make it possible, we need to tie the templates of the "canopy" class with the templates of the "fusetemp" class. That is the reason why we did not really take care of the parameters of the first template of the "canopy" class : the tie option is only available from the template create/edit window.Before we begin, clear the screen. Click on the View|View options menu option and unselect any sub-assies but the Desk. Validate (apply button). Select the front view. Adjust the scale factor to 50 pixels/ft.
Go back to the first "canopy" template : select the Template|Edit template menu option. The currently selected class is the "canopy" class... unless you did something else. In case you did, select the "canopy" class in the list box labeled select template class. The current template is the template we created at the class creation. Click on the tie button. The template create/edit window is modified. The lower part of the window differs from the lower part of the window displayed for tied section-type or profile-type templates.
We shall tie the current "canopy" template to a template belonging to the "fusetemp" class. This class is the default option of the list-box labeled tied to class. Check the tied to a single template check-box and the tangent to the template(s) check-box. There were to 3-coordinate rows at the bottom of the window : one of them is cleared. Use the Up/Down arrow beside the remaining 3-coordinate row to select the template with the following origin :
0.000 | -8.000 | -2.200 |
You may notice that the canopy template parameters are adjusted to reflect the tie. Accept the values which are proposed by
Aircraft Designer 2000 and click on the OK button.Let us now declare the other templates of the class. Create another template :
0.000 | -6.400 | -2.286 |
0.000 | -6.400 | 1.200 |
and click with the right button of your mouse. The red cross will move to this point. Click now on some other point of the screen (without pressing the right button of the mouse). The red cross is prisoner again inside new boundaries. Go back to the template editor window and enter the number 0.900 in the input data field of the origin z coordinate of the "canopy" template. The z coordinate data field of the origin does not copy your input : it is now worth 1.046 instead. This is the same kind of limitation that we experienced on the screen. To really put the origin of the template at this z coordinate, you need once again to click on a point with the z = 0.900 coordinate while pressing the right button of the mouse. Do it. The coordinates of the origin are now the following :
0.000 | -6.400 | 0.900 |
Click now on the edit button. This template looks too flat. The pilot will have no room for his head ! Move the cursor over the horizontal bar just below the small white screen displaying the template shape (this one with the Up label). When you go over the small vertical lines splitting this bar, the cursor is modified. Click and drag the first line on the right and move it towards the left. You can see the real-time modification of the shape while you move the small line. The k0, k1 and k2 parameters displayed in the panel below are modified too. Use the bar to get a sharper shape. When I prepared this tutorial, I used the values k0 = 0.4303, k1 = 0.4379 and k2 = 1.0469. You should enter this value in the k0, k1 and k2 input data field if you want to have the same basis as these used for this tutorial. It could be helpful when it will be required later on to click on one of the vertices of the canopy. Click on the OK button to exit the template parameters editor window. Validate the template creation by clicking on the OK button.
We shall now create a third template located between the two previous ones :
0.000 | -7.350 | 1.000 |
in the input data fields of the coordinates of the origin.
0.000 | -8.000 | -2.200 |
0.000 | -6.400 | -2.286 |
with the Up/Down arrows beside the 3-coordinate rows.
generate a section of the fuselage with the canopy on it
We shall generate a part of the fuselage with the canopy on it. Create a sub-assy called "MIDAFT". Select the Template|Cover Template menu option. Make sure the "canopy" class is selected in the list-box labeled select template class.
Click on the combined cover button. The templates which origins are located at :
0.000 | -8.000 | 1.009 |
0.000 | -6.400 | 0.900 |
are the default selected templates. Check the intermediate template check-box. A new 3-coordinate row is displayed which propose you as single choice the template which origin is located at :
0.000 | -7.350 | 1.049 |
The Ext button is pressed : it is fine. Click on the cover button.
Aircraft Designer 2000 automatically generates the polygons resulting from the combination of the fuselage and the canopy.Click now on the ninth button of the tool bar (the open selection button). The polygons which were generated by
Aircraft Designer 2000 as part of the canopy are stored in the multiple selection buffer. Good idea : we shall move them to another sub-assy. Create a sub-assy called "AFTCANOP". Then activate the Selection|Move to sub-assy menu option. Select the AFTCANOP sub-assy as the destination sub-assy in the list-box labeled name of sub-assy. Validate the transfer by clicking on the OK button.Launch the
Model Editor. Display the code page associated with the AFTCANOP sub-assy (Page|AFTCANOP menu option). We want the canopy to be transparent. FS98™, only allows some special polygons to be transparent (this restriction only applies to FS98™). These are the simple polygons (declared by a POLY instruction).. Double-click on the code field of the first instruction of the code page (SUBASSY,T). A window is displayed which allows you to select the lines and simple polygons option or the shaded and texture polygons one. Select the first option and validate by clicking on the OK button. The first instruction is now a SUBASSY,S one and every TPOLY instruction has become a POLY instruction.We need now to insert a transparency instruction. Select the second line of the code page. Insert an instruction with the Color/Texture and Transparency options. Validate by clicking on the OK button. A
GLASS instruction is inserted :GLASS | ? |
Double-click on the question mark and enter the number 6 as transparency index.
We are not done with these sub-assies. We shall assign a texture to the MIDAFT sub-assy. We shall use the texture that was already used for the aft of the fuselage with the same limits. Stay in the
Model Editor and display the code page associated with the MIDAFT sub-assy. Select the second line and insert a TEXTURE/LIMITS combined instruction pair. Assign the "fusaft" file to the TEXTURE instruction itself. Double-click on the "undefined limits" data field of the LIMITS instruction and cycle through the texture support list by clicking on one of the blue-gree arrows of the texture support selection windows. The following data will be eventually displayed :ymin, ymax : | -15.700 | -2.400 |
zmin, zmax : | -2.500 | 1.500 |
Validate by clicking on the OK button and exit the
Model Editor.We shall now complete the MIDAFT sub-assy which is still some kind of an open shell. From the main screen of
Aircraft Designer 2000, make sure the MIDAFT sub-assy is selected. Click on the sel button on the right of the tool bar. The only MIDAFT sub-assy is now displayed on the Graphic Editor screen. Select the top view and adjust the scale factor to 100 pixels/ft. Center the image on the screen with the scrollbars. Activate the chain creation mode. Use the CTRL key to build a polygon the vertices of which is aligned with the following existing points :0.000 | -8.000 | 1.400 |
-0.221 | -7.957 | 1.401 |
-0.351 | -7.872 | 1.402 |
0.351 | -7.872 | 1.402 |
0.221 | -7.957 | 1.401 |
Validate (poly button). Create another polygon the vertices of which is aligned on the following existing points :
-0.351 | -7.872 | 1.402 |
-0.456 | -7.843 | 1.343 |
0.456 | -7.843 | 1.343 |
0.351 | -7.872 | 1.402 |
Validate (poly button). Create a third polygon the vertices of which is aligned on the following existing points :
-0.456 | -7.843 | 1.343 |
-0.990 | -7.350 | 1.049 |
0.990 | -7.350 | 1.049 |
0.456 | -7.843 | 1.343 |
Validate (poly button).
While building this polygon, you can notice that the temporary panel which allows you to select among several existing points located at the same position on the screen makes a difference between a simple point and a point which belongs to a template. A subscript "t" is added to the coordinate label in case of a template related point.
The last polygon to be created in the MIDAFT sub-assy has its vertices aligned on the following existing points :
-0.990 | -7.350 | 1.049 |
-1.130 | -6.400 | 0.900 |
1.130 | -6.400 | 0.900 |
0.990 | -7.350 | 1.049 |
When you are done, insert a
GCOLOR instruction just before these polygons and assign it the index #3 (light grey color). A GCOLOR instruction applies only to GPOLY instruction. Double-click on the TPOLY code field of any one of the four considered polygons and select the shaded polygons option in the type selection window which is displayed. The MIDAFT sub-assy is completed.create the other sub-sections
To create the other sub-sections, you will proceed in a very similar way.
intermediate sub-section :
0.000 | -3.700 | -2.430 |
To do that, you must select the tied to a single template option. The z coordinate of the "canopy" template origin must be 0.900 (use the right button of the mouse to help the red cross "jump the boundaries"). Adjust the parameters of the template (k0 = 0.4767, k1 =0.3923 et k2 = 0.9970). Validate the creation.
0.000 | -6.400 | 0.900 |
0.000 | -3.700 | 0.900 |
-1.130 | -6.400 | 0.900 |
-1.283 | -3.700 | 0.900 |
1.283 | -3.700 | 0.900 |
1.130 | -6.400 | 0.900 |
We shall do it again to generate the fore sub-section :
0.000 | -2.400 | -2.500 |
To do that, you must select the tied to a single template and tangent to the template(s) options. Adjust the parameters of the template (k0 = 0.5154, k1 =0.4380 et k2 = 0.7229). Assign the value 1.600 to the width (width). Validate the creation.
0.000 | -3.700 | 0.900 |
0.000 | -2.400 | 0.601 |
-1.283 | -3.700 | 0.900 |
-1.210 | -3.614 | 1.036 |
1.210 | -3.614 | 1.036 |
1.283 | -3.700 | 0.900 |
Create another polygon the vertices of which are aligned on the following existing points :
-1.210 | -3.614 | 1.036 |
-0.710 | -2.658 | 1.353 |
0.710 | -2.658 | 1.353 |
1.210 | -3.614 | 1.036 |
Create another polygon the vertices of which are aligned on the following existing points :
-0.710 | -2.658 | 1.353 |
-0.466 | -2.556 | 1.497 |
0.466 | -2.556 | 1.497 |
0.710 | -2.658 | 1.353 |
And finally create another polygon the vertices of which are aligned on the following existing points :
-0.466 | -2.556 | 1.497 |
-0.419 | -2.509 | 1.498 |
0.000 | -2.400 | 1.500 |
0.419 | -2.509 | 1.498 |
0.466 | -2.556 | 1.497 |
0.000 | -2.400 | -2.500 |
0.000 | 2.400 | -2.300 |
Validate the automatic cover process by clicking on the cover button.
0.469 | -2.400 | -2.500 |
0.469 | -2.400 | 1.500 |
0.335 | 7.300 | 1.300 |
Add this polygon to the texture support list (Utilities|Define chain as support menu option). Launch the
Model Editor and display the code page associated with the MIDFORE sub-assy. Select line #27 (undefined LIMITS instruction) and assign it the texture support that we have just declared :ymin, ymax : | -2.400 | 7.300 |
zmin, zmax : | -2.500 | 1.500 |
The pilot's head
new concept : build a cone |
Exit the
Model Editor. Create a sub-assy called "PILOT". Activate the top view and adjust the scale factor at 50 pixels/ft. Enter 1.060 in the input data field of the coordinate of the current work plane (lower right corner of the screen, data field labeled plane). Activate the Draw|Shape|Hexagon menu option. Enter the number 0.500 in the radius data field. Click on the screen at a point located at :x = 0.000 | y = -5.700 |
Click on the B button (B stands for bottom) in the input window and validate the hexagon by clicking on the draw button.
Select now the Draw|Build cylinder menu option. Accept the default vector option. Do not check the truncated by a plane check-box. Enter the following values :
0.000 | 0.000 | 0.900 |
as coordinates of the vector. Select the sub-assy PILOT as the destination sub-assy. Validate the cylinder by clicking on the build button.
Go back to the side view and select the Desk. Click on a point located at :
y = -6.200 | z = 1.960 |
You just have selected the hexagon that
Aircraft Designer 2000 has created in the Desk to build the cylinder. Activate the Draw|Build cone cone. Select the point option. Enter the following values :0.000 | -5.800 | 2.100 |
as coordinates of the summit of the cone. Select the PILOT sub-assy as the destination sub-assy. Validate the cone by clicking on the build button.
We shall immediately create the texture support that will be associated with the pilot's head. Select the front view. Clear the screen by keeping just the Desk and the PILOT sub-assy (View|View options). Make sure the Desk is selected. Create a polygon the vertices of which are aligned with the following existing points :
-0.433 | -5.450 | 1.060 |
0.000 | -5.800 | 2.100 |
0.433 | -5.450 | 1.060 |
Declare it as a texture support.
Launch the
Model Editor and display the code page associated with the PILOT sub-assy. Insert a TEXTURE/LIMITS combined instruction pair at the beginning of the polygon list. Double-click on the question mark in the data field of the TEXTURE instruction, select the front and half2 attributes and the "Pilot" file (it is the picture of my english teacher at the high school). Validate by clicking on the OK button. Double-click on the data field of the LIMITS instruction and assign it the polygon we have created for this purpose :xmin, xmax : | -0.433 | 0.433 |
zmin, zmax : | 1.060 | 2.100 |
Validate by clicking on the OK button.
We are done with the creation of the polygons associated with the mid section. It is time to save your job, isn't it ?
Intermediate section : the main code page
new concepts : use a template as a seal plane - the "tmp" and "chn" buttons : priority chain or priority template - flip a seal plane |
The main code related to the mid section will be built in order to fit the following logical breakdown :
MIDSECT : | position of the observer vs. the right side of the fuselage |
side#1 : | first display the right wing (RITEW) then the remaining (M01) |
side#2 : | first display the remaining (M01) then the right wing (RITEW) |
M01 : | position of the observer vs. the left side of the fuselage |
side#1 : | first display the left wing (LEFTW) then the remaining (M02) |
side#2 : | first display the remaining (M02)then the left wing(LEFTW) |
M02 : | position of the observer with respect to the plane y=-6.400 |
side#1 : | first display the aft sub-section (M06) then the remaining (M03) |
side#2 : | first display the remaining (M03) then the aft sub-section (M06) |
M03 : | position of the observer with respect to the plane y=-3.700 |
side#1 : | first display the mid sub-section (M04) then the remaining (M05) |
side#2 : | first display the remaining (M05) then the mid sub-section (M04) |
M04 : | position of the observer with respect to the plane z=0.900 |
side#1 : | first display MIDMID then the remaining (PILOT and MIDCAN) |
side#2 : | first display PILOT and MIDCAN then MIDMID |
M05 : | position of the observer with respect to the plane MIDFORE/FORECAN |
side#1 : | first display MIDFORE then FORECAN |
side#2 : | first display FORECAN then MIDFORE |
M06 : | position of the observer with respect to the plane MIDAFT/AFTCAN |
side#1 : | first display MIDAFT then AFTCANOP |
side#2 : | first display AFTCANOP then MIDAFT |
We shall need a few seal planes :
Let us begin with the JUMP PLANE/GOSUB.../RETURN instruction blocks generation. As we saw before, pressing SHIFT + INSERT inserts a full block before the selected code line. Launch the Model Editor and stay with the main code page. Select the line which is related to the TAIL sub-assy (it should be the first declared sub-assy) and press seven times the SHIFT+INSERT key combination.
Go up to the first undefined block. It is convenient to first assign the destination addresses of all the JUMP PLANE instructions. Each JUMP PLANE instruction must be directed at the GOSUB which is 5 lines below it (juste after the first RETURN). For any JUMP PLANE instruction, double-click on the question mark which is in its data field, then point the finger on the relevant GOSUB instruction and click on it. Assign the M10, M11, M12, M13... and M16 labels to these instructions.
The next step consists in giving a label to each one of these JUMP PLANE/GOSUB.../RETURN blocks according to the logical breakdown presented hereabove. Double-click on the address field of the JUMP PLANE instructions and assign them respectively the MIDSECT, M01, M02, M03... and M06 labels.
To complete this code section, we must assign the destination address of all the undefined GOSUB instructions. To do that, we just need to double-click on the question mark which is in the data field of these GOSUB instructions, then point the finger at the destination instruction according to the logical breakdown and click on it.
There are exceptions to this rule :
M04 | JUMP PLANE | M14 |
PLANE | undefined vector | |
GOSUB | MIDMID | |
GOSUB | PILOT | |
GOSUB | MIDCAN | |
RETURN | ||
M14 | GOSUB | PILOT |
GOSUB | MIDCAN | |
GOSUB | MIDMID | |
RETURN |
Once you are done, you will have to deal with the seal planes. Exit the Model Editor. Select the Desk. Create a polygon the vertices of which are aligned on the following existing points :
1.646 | -3.700 | 0.272 |
1.750 | 2.400 | 0.219 |
1.750 | 2.400 | -1.019 |
Declare it as a seal plane. Launch the
Model Editor and assign this seal plane to the first undefined PLANE instruction (this one in the MIDSECT block).Exit the
Model Editor. Duplicate the previous seal plane and apply to the copy a "mirror" operation (Draw|Mirror|right/left menu option). Then declare it as a seal plane (Utilities|Add chain to seals menu option). Launch the Model Editor and assign this seal plane to the PLANE instruction in the M01 block.Exit the
Model Editor. Click on the tmp button on the tool bar. In the side view, click on the point located at :y = -6.400 | z = -2.280 |
You have selected the template the origin of which is located at this point. Declare it as a seal plane(Utilities|Add template to seals menu option). Launch the
Model Editor and assign this seal plane to the PLANE instruction in the M02 block. The seal selection window displays the following data :distance : | 6.400 |
coordinates : | 0.000, -1.000, 0.000 |
This is the opposite direction to one we wish to have (see the jump order in the logical breakdown) : click on the reverse button between the two blue-grey arrows to reverse the vector and validate.
Exit the
Model Editor. Click on the point located at :y = -3.700 | z = -2.440 |
You have selected the template the origin of which is located at this point. Declare it as a seal plane(Utilities|Add template to seals menu option). Launch the
Model Editor and assign this seal plane to the PLANE instruction in the M03 block. The seal selection window displays the following data :distance : | 3.700 |
coordinates : | 0.000, -1.000, 0.000 |
This is the opposite direction to the one we wish to have : click on the reverse button between the two blue-grey arrows to reverse the vector and validate.
Exit the
Model Editor. Click on the chn button on the tool bar. Select the MIDMID sub-assy. Press as many times on the C key as needed to highlight the polygon which is at the bottom of the sub-assy. Declare it as a seal plane (Utilities|Add chain to seals). Launch the Model Editor and assign this seal plane to the PLANE instruction in the M04 block. We also need to reverse it to be compliant with the logical breakdown.Exit the
Model Editor. Select the Desk. Select the top view. Create a polygon the vertices of which are aligned on the following existing points :0.000 | -8.000 | 1.400 |
-1.130 | -6.400 | 0.900 |
1.130 | -6.400 | 0.900 |
Declare it as a seal plane. Launch the
Model Editor and assign this seal plane to the undefined PLANE instruction in the M05.Exit the
Model Editor. Select the Desk. Select the top view. Create a polygon the vertices of which are aligned on the following existing points :1.283 | -3.700 | 0.900 |
0.000 | -2.400 | 1.500 |
-1.283 | -3.700 | 0.900 |
Declare it as a seal plane. Launch the
Model Editor and assign this seal plane to the undefined PLANE instruction in the M06.If you made no mistake, the code associated with the mid section should look like this :
MIDSECT | JUMP PLANE | M10 |
PLANE | -1.709;-1.000,0.017,0.000 | |
GOSUB | RITEW | |
GOSUB | M01 | |
RETURN | ||
M10 | GOSUB | M01 |
GOSUB | RITEW | |
RETURN | ||
M01 | JUMP PLANE | M11 |
PLANE | -1.709;1.000,0.017,0.000 | |
GOSUB | LEFTW | |
GOSUB | M02 | |
RETURN | ||
M11 | GOSUB | M02 |
GOSUB | LEFTW | |
RETURN | ||
M02 | JUMP PLANE | M12 |
PLANE | -6.400;0.000,1.000,0.000 | |
GOSUB | M06 | |
GOSUB | M03 | |
RETURN | ||
M12 | GOSUB | M03 |
GOSUB | M06 | |
RETURN | ||
M03 | JUMP PLANE | M13 |
PLANE | -3.700;0.000,1.000,0.000 | |
GOSUB | M04 | |
GOSUB | M05 | |
RETURN | ||
M13 | GOSUB | M05 |
GOSUB | M04 | |
RETURN | ||
M04 | JUMP PLANE | M14 |
PLANE | 0.900;0.000,0.000,1.000 | |
GOSUB | MIDMID | |
GOSUB | PILOT | |
GOSUB | MIDCAN | |
RETURN | ||
M14 | GOSUB | PILOT |
GOSUB | MIDCAN | |
GOSUB | MIDMID | |
RETURN | ||
M05 | JUMP PLANE | M15 |
PLANE | -1.050;0.000,0.298,0.954 | |
GOSUB | MIDFORE | |
GOSUB | FORECAN | |
RETURN | ||
M15 | GOSUB | FORECAN |
GOSUB | MIDFORE | |
RETURN | ||
M06 | JUMP PLANE | M16 |
PLANE | 2.368;0.000,-0.419,0.908 | |
GOSUB | MIDAFT | |
GOSUB | AFTCANOP | |
RETURN | ||
M16 | GOSUB | AFTCANOP |
GOSUB | MIDAFT | |
RETURN |
Of course, we need to insert a conditional jump that will help the flight simulator to sort the aft section and the mid section. Go back to the beginning of the main code page. Select the second instruction and insert a JUMP PLANE/GOSUB.../RETURN instruction block (SHIFT+INSERT). Assign the destination address in order to get something like this :
UGLY100 | MASTER | |
JUMP PLANE | C01 | |
PLANE | -8.000;0.000,1.000,0.000 | |
GOSUB | AFTSECT | |
GOSUB | MIDSECT | |
RETURN | ||
C01 | GOSUB | MIDSECT |
GOSUB | AFTSECT | |
RETURN | ||
... |
The seal plane is based on the template the origin of which is located at :
y = -8.000 | z = -2.200 |
in the side view. Declare this template as a seal plane and assign it to the
PLANE instruction of this block. Once again, you will have to use that reverse button...