MoI discussion forum
MoI discussion forum

Full Version: Anyone wish to develop a custom script?

Show messages:  1-9  10-29  30-49  50-69  70-89  …  210-223

From: bemfarmer
20 Dec 2011   [#10]
Here is a preliminary htm file for the entry screen.
It is based upon looking at several other .htm scripts, trial and error, and guessing :-)
It will need some changes to variables, and formatting (?)
(Current text editor is notepad++)

In MoI3beta, the width self adjusts. In MoI2, the width is squashed.

(Edit, must not use the lessthan or greaterthan symbols, or this post formatting gets weird.) :-))


Michael, is there any documentation of how the MoI .htm works, or what the terms mean?

Thank You

Edit, updated to better versions 12/21/11. (Only one person had downloaded.)

Attachments:
PropDesignGeo.htm

Image Attachments:
Design_a_Prop_BetterScreen2.PNG 


From: bemfarmer
20 Dec 2011   [#11]
The following means: "if there are spaces (white-space) between the words of a text line, do not wrap the words to the next lines"
code:
style="white-space: nowrap"
:-))

From: Michael Gibson
20 Dec 2011   [#12] In reply to [#10]
Hi Brian,

> (Edit, must not use the lessthan or greaterthan symbols, or
> this post formatting gets weird.) :-))

If you put in HTML tags directly into a message, the forum thinks that you're trying to use that HTML code to format your actual message, so the tags will become part of the HTML and get interpreted by the browser instead of actually displayed as plain text.

But you can disable that by putting what you want to display inside of a <code>...</code> block - anything inside of a code block in a forum message will have its text displayed directly rather than having any of it interpreted as HTML formatting.


> Michael, is there any documentation of how the MoI .htm works,
> or what the terms mean?

No, unfortunately it takes quite a bit of work to fully document all of that stuff, I do not currently have anything like that.

For the regular HTML parts though there is a lot of documentation online.

What terms in particular are you asking about?

- Michael
From: bemfarmer
20 Dec 2011   [#13] In reply to [#12]
Thank you Michael

Tips on spacing text versus entry boxes would be helpful.

What do the following mean, or how are they used?

style="width:100%;"

style="width:3em; [creates space for decimal places]

style="persist:true;" [style lasts until .....]
From: Michael Gibson
21 Dec 2011   [#14] In reply to [#13]
Hi Brian,

> style="width:100%;"

This one is standard HTML - it means to make the element take up the entire width of its container. On some kinds of elements like a table if you don't set width=100% it can kind of shrink down to be smaller than that if it goes down to just hug the size of the text inside of it. For some kinds of things that would not be good - like imagine the "Done" and "Cancel" buttons if they were like that.


> style="width:3em;

This one is also standard HTML - ems are a measurement unit that is relative to the current font, so that's like saying make it the width of 3 characters of the current font size. See here for more info on CSS units: http://w3schools.com/cssref/css_units.asp


> style="persist:true;"

That one is a MoI-specific attribute - that sets whether a control in the command UI will remember its value on the next run of the command or not - some controls default to persisting the value and if I remember right some controls like text input fields default to not persisting it, but the default persist value can be overwritten by assigning that style property to the specific element.

If an control in the command UI is set to persist then its value is recorded when the command ends, and the next time that command starts up it will get initialized with that value.

- Michael
From: Michael Gibson
21 Dec 2011   [#15] In reply to [#13]
also:

> Tips on spacing text versus entry boxes would be helpful.

Do you have a particular spot where the spacing is not what you want?

Usually for input fields it's easiest to put them into a <table> which will line them up and will put in a bit of default spacing as well.

- Michael
From: bemfarmer
21 Dec 2011   [#16] In reply to [#15]
Thank you Michael.

I should do more w3schools reading.
I had a missing "table" (unbalanced), so display was messed up.
Adding "white-space:nowrap" helped a lot too.
(updated previous attachments)

Display looks pretty good in MoI3beta.
In MoI2 the display runs off the right side, in scroll. I think there is an old
discussion to widen display in MoI2...
:-))
From: Unknown user
21 Dec 2011   [#17] In reply to [#16]
The menu picture you posted looks great so far. Thanks for all the hard work.
From: bemfarmer
21 Dec 2011   [#18] In reply to [#17]
Thank you Anthony.
It's a hobby for me, plus a learning experience.
Do you need 16 decimal digits for RADIUS?
I should spend a little time getting familiar with the terminology & formulas...

There could be an initial menu with which to select "Fan" or "Predator", or "Piaggio", etc., with the
hidden (multiple?) parameter input menu(s) then activated, or maybe pass the parameter list to one menu?

But for now, the menu is enough for testing. Time to continue work on the .js script.
:-)

If you see anything objectionable, please speak up.
I'm resolving to resist the urge to rename variables.
Data types will be integer or javascript decimal...
From: Unknown user
21 Dec 2011   [#19] In reply to [#18]
Hi,

Yeah it would be confusing if you renamed variables on the menu. The radius being carried out so far enables the power to be set precisely. Say the user enters 1200 shp in PROP_DESIGN_OPT, the program will iterate to find all the necessarily information. Radius goes out that far to get the power to come into line. But for the casual user I'm sure they are not going to enter numbers out that far. Since you can't even manufacture to that tolerance. Probably people would tolerance from 3 to 6 decimals normally. If it isn't a problem to carry the numbers out that far it would be good from more of a theoretical standpoint. I like to do all my calculations to as high a precision as I can and then as the very last step round down to the desired decimal point. Otherwise you get a lot of roundoff error building up.

I don't see anything wrong as of yet, looks great. I posted a new version which has some example files you can try. If you want to wait or not even include them that is fine. Just an idea. I have all those examples now in each version of PROP_DESIGN. But its not a big deal to manually enter the inputs.
From: bemfarmer
22 Dec 2011   [#20]
Help with fortran conversion to javascript:
http://www.see.ed.ac.uk/~jwp/JavaScript/programming/notes.html

Array subscripts actually start at zero, but the first element can be ignored...(carefully...)
From: Unknown user
22 Dec 2011   [#21] In reply to [#20]
Hi bemfarmer,

I was modelling some of the examples and encountered the mm unit system issue. Basically if you don't use mm all sorts of things don't work in MoI v2 with these models. Also I have to change the mesh angle to 1.0 degrees for some models to display right. Given this I updated the code to output in units of mm instead of meters as previously. I tested some of the examples and they seem fine.

Anthony

Edit; the latest version of this code can be found in a later post.
From: bemfarmer
23 Dec 2011   [#22] In reply to [#21]
Hi Anthony,

How are you importing your AIRFOIL_POINTS.XYZ and RAIL_POINTS.XYZ files into MoI?
The import point file does not work for me. It shows a Type Mismatch line 112 error.

I finished writing the PropDesign MoI script, and it loads without any errors, (after fixing a few dozen), but nothing is
displayed on the screen, (except alert message, which loops 13 times), :-(.

Is the idea to display the fan/propeller directly on the MoI screen, without creating a point file, and without having to load a point file?

Thank You.
From: Unknown user
23 Dec 2011   [#23] In reply to [#22]
Hi,

Yes ideally, if the script created the 3d blade geometry that would be awesome. As far as loading the xyz files that the fortran code created select space formatting from the dropdown menu. also, maybe they didn't update the script on the download page. when i first tried it didn't work either. but someone posted an update to the forum thread. i assumed they uploaded it to the actual place where it is, but maybe not.

i'll attach the files i'm using just to make it easier on you.

what i am currently doing is importing the point files, now in mm. then i create the splines for the airfoil and for the rails. then do a two rail sweep. its not that hard. but its redundant and tedious to do over and over again. the airfoil points aren't quite right so you have to use control point when creating the splines. also you have to make the leading edge and trailing edge arcs. the trailing edge arc is really small so you have to zoom in a lot to see it. if everything is created right it should come out as a solid rather than a collection of joined surfaces. sometimes small errors you can't see will develop and you won't get the solid.
From: bemfarmer
23 Dec 2011   [#24] In reply to [#23]
Thanks Anthony

Michaels updated import point script works, so I'm getting a better idea what is going on.

(Found the forum thread on "Import Point Script Error" with Michaels updated import point script.)
(The import point script(s) on the kyticka.webzdarma site are the original versions.)

Would an increase from 13 TIP points help any?

Regarding the "splines for the airfoil", where/which are the points, or how are the splines for the "backside" of the airfoil determined?

Are the calculated airfoil points (supposed to be) on the actual physical surface of the propeller?
I'm aware of three factory types to choose from, var factory = moi.command.createFactory( 'interpcurve' ), curves go through the points, or
var factory = moi.command.createFactory( 'curve' ), curves use the points as contol points, or
var factory = moi.command.createFactory( 'point' ), creates points from the x,y,z points.
(The point one just makes points, the current import points situation). (The first two make curves, easier to sweep, no splines to manually create,(except for tip/edge arcs?....)

One factory to create the (closed?) curve of the airfoil cross section.
Three factories to create "top", "bottom," and "middle" rail. ("top" points make 1 rail, "bottom" points make 1 rail, middle points make 1 rail.?)

Is there only one cross section airfoil for the entire rail sweep? (in current model?)
(Excuse dumb questions please, trying to understand the geometry, and which points get connected.)

What are the middle rail points for?


What does each triplett of rail points represent? , (front? back?).
From: bemfarmer
23 Dec 2011   [#25]
Was thinking along these "nonaerodymic" lines:



From: Unknown user
23 Dec 2011   [#26] In reply to [#24]
hi bemfarmer,

no not dumb questions. i'll post some pics to help out, but for now i'll answer the easy ones. The rails can be used to create splines directly. those points are good. one set is for the leading edge. one is for the trailing edge. the other is for the 1/4 chord point. that one is for reference. its a good idea to have it in there just as a spline, but not used to make the blade. this way you can measure the radius of the blade and have it match the fortran code. also people may want to know where it is to apply loads and so forth if doing analysis.

the airfoil points are straight out of a NACA document (NACA is the predecessor of NASA). They did a lot of airfoil work back in the day. The NACA 65A series of airfoils yields good transonic performance. Meaning they can travel about Mach .7 efficiently. Or the speed of a common commercial airliner. The only problem is these points don't work out well when making the splines. So this set has to be used as control points. I added in a few points to help make the leading and trailing edge curves. When all is said and done you will end of with four curves you can join together. Then use that as the profile to sweep along the leading and trailing edge rails. This is where I need to show some pictures of how to get the four curves. Or maybe a screencast. I'll figure something out and send you the info.

Sounds like you have enough controls with the scripting. I only use a handful of tools and you mentioned them all in your last e-mail. So I think you have access to everything you need.

Anthony
From: Unknown user
23 Dec 2011   [#27]
Ok,

Here is a YouTube video I posted showing how I am making the blades. I should have showed my settings more. I am in the mm unit system and have a mesh angle of 1.0 degrees. I have found these two things to allow the creation of the blades without issues.

Anthony

Edit; This video has since been updated to match the latest version of PROP_DESIGN. See a later post, for the current link.
From: Jacob
23 Dec 2011   [#28]
This is wonderful! I can now have my fantasy airplanes grounded in reality even more. :-)

I'll be glad to help with the MoI interface if you need any.
From: Unknown user
24 Dec 2011   [#29] In reply to [#28]
Thanks,

Any help would be great. So far bemfarmer has been working on things. He would be the one to talk with if you like. Unfortunately, I don't know anything other than Fortran 77, so not much use. Just answering questions and testing things.

Anthony

Show messages:  1-9  10-29  30-49  50-69  70-89  …  210-223