Sign in to follow this  
Guest GerrishGray

Biais, what is it ?

Recommended Posts

You know what they say, better look silly than stay ignorant:-). I've been working (working ? hmmm)on placing objects for a couple of weeks now with the help of the manual and of you guys but there's still something which mystifies me. What is the biasXYZ function ? Granted, english is not my first language but I thought I knew what a biais was. I read the manual, I read posts but cannot comprehend what is the use of it ?Any good soul ?Dominique

Share this post


Link to post
Share on other sites
Help AVSIM continue to serve you!
Please donate today!

Hi there,This is a good question. I use BiasXYZ occaisionally if I want to offset one object at an exact distance from another object. An example would be the fences I make for my scenery. Rather than make one big fence, I created a bunch of little fence parts, and then placed them all individually. If I know that my fence part is 6 meters wide, then I know that I want to place my enxt fence part 6 meters to the side so that it looks continuous.So, my first part is placed as such:So far so good. Now I want to place my next fence part. I use the same "lat" and "lon", and then offset the part by specifying the "biasX" and "biasZ". In this case, we have to use a little trigonometry, since my fence line does not go exactly East-West or North-South.... and my next object would be:The problem with placing scenery this way is that it is a little labour-intensive, especially if you have a lot of parts. I am hopeful that a program like SceneGenX will eventually allow us to create a line of objects so that it will create this source code for us. However, once you make your calculations and start offestting your parts, it starts to go quickly. Also, there may be other uses for this method - this is just one example I use.There are a couple of downfalls to this method. The first is that MS does not recommend we use it, for some reason. Maybe this won't be supported in future versions? Also, your calculations for biasX and biasZ have to be exact (in my example anyway), and it is easy to make mistakes which can be tricky to debug later.- Martin

Share this post


Link to post
Share on other sites

Hi MartinThanks,appreciated it. It is crystal clear.Dominique

Share this post


Link to post
Share on other sites

Ahhh, but once clear, lets muddy it. In the example above you can see that bias is synonomous with "delta" or "difference", but in the zbias special naming convention it now takes on a drawing order function, which more approximates the idea of "preference", as in "I'm biased towards olives in my salad".Bob B

Share this post


Link to post
Share on other sites

Howdy,I like Martin's approach and it's actually quite simple to set up an Excel spreadsheet in which one plugs in the constants (length of object, angle, and start coordinates) and the output is a number of columns with the offset for the Bias parameters for each successive segment.... which brings me to my question: anyone know why the lat/long offsets are X and Z instead of X and Y? Took me the longest time to figure this out when I first used Bias.Cheers, Holger

Share this post


Link to post
Share on other sites

>... which brings me to my question: anyone know why the>lat/long offsets are X and Z instead of X and Y? Took me the>longest time to figure this out when I first used Bias.I think it's just a different convention they use. It's also different in the aircraft.cfg files, where the coordinates are in y,x,z format (relating to GMAX). In my trig class, the X was the horizontal axis, and the Y was the vertical, leaving Z for "depth", which is what BGLComp is using. I guess the left hand at MS doesn't know what the right hand is doing, because it would be nice if it worked the same way all the time.- Martin

Share this post


Link to post
Share on other sites

Please don't blame MS for the naming confusion regarding the X-Y-Z coordinates, they have always used x=East, y=Altitude, z=North in compliance with normal Cartesian coordinate convention. I.e. if you are standing at a scene facing north, then x is right, y is up and z is the depth of view away from you (just like Cartesian coordinates at school, as someone said). It is others (notably SCASM) that have confused the issue by making z=Altitude and then having to write the coordinates in the sequence x,z,y instead of x,y,z as a result!Bias in BGLComp should not be confused with ZBias as used in BGLC/SCASM. BGLComp's BiasXYZ is displacement of a whole object from its Lat-Lon origin ('reference point'). ZBias in BGLC/SCASM code is a means of fooling FS into thinking that a particular surface is closer to the viewer than it really is in order to change the drawing order and ensure that the ZBias-ed surface overpaints an otherwise equidistant one. Note that 'Z' here is being correctly used as referring to the 'depth of view' coordinate.Incidentally, using BiasXYZ in BGLComp is not quite the same thing as using SCASM's delta format for RefPoint coordinates, even though the effect appears to be the same. The difference is that SCASM uses its delta displacement format to recalculate the reference point to a precise new Lat-Lon position, whereas the BGLComp BiasXYZ literally displaces the object from the stated Lat-Lon refpoint and therefore gives FS an extra step to perform when calculating the display of the object, just like SCASM's TransformCall() or BGLC's POINT_VICALL. BiasXYZ is an excellent way of creating a line of objects etc. or easily positioning neighboring objects accurately next to each other, and the performance penalty is very tiny - probably not worth worrying about - so BiasXYZ is fine as long as it is only used for 'local' displacements, not large-scale ones.Hope this helpsGerrish

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this