Sign in to follow this  
Guest GerrishGray

Relocating API's with Airport.

Recommended Posts

I seem to not be able to update some API's to more accurate location in my scenery.Is selecting and draging the API ok? I have used this method before but now the locations are not being updated in FS2K2.Lastly, I have deleted some API and 1 terminal seems to not want to leave.Both of these seem to be a related problem, Airport is not updating my .bgl to the updates I make.Thanks..

Share this post


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

Hi.. 'Depends on whether or not the .api file is written to be "movable". When viewed in a text editor, the Area( and RefPoint( values for Lat and Lon must be written as %1 and %2 for them to be movable. If they are, you should be able to drag/drop them anywhere on your scenery map. Then, for accuracy of location, you are at the mercy of your scale settings in Apt26's menu window for that scenery project. This defaults to 1cm/100m but can be changed if need-be. I've never noticed Apt not updating the .bgl responsive to changes such as this. Is it possible there may be an unwanted "rogue" bgl lurking in the scenery. Also, make sure you've activated your scenery you're working-on in the scenery library so that it overrides any default objects "in the way" for the area you're working...Regards;J.R.

Share this post


Link to post
Share on other sites

I've had strange things happen, often the answer is that the object IS gone, but the refresh of FS2002 is what has failed...sometimes just restarting the program shows the object is really gone...I like to go to the code, as long as SCASM is still used, as in airport, its easy to just go to the sca file, and open it...near the bottom, you'll begin to see commands that start with "Macro", you'll see one for every api. If its there, you know its there! If the macro you deleted is gone, you know its a different problem, either the refresh I mentioned, or like you got confused and put the revised bgl somewhere incorrect by mistake, or something.B

Share this post


Link to post
Share on other sites

So looking at the example macro's Area and RefPoint, it is a fixed position? Can it be changed to be relocated? If so to what.I have been reading the macro tutorial site and think I know what needs to be changed but un-sure.Thanks,Jay

Area( 5 N29:57:24.00 W095:20:43.85 8 ) PerspectiveCall( :L00747A ) Jump( : ):L00747A Perspective RefPoint( rel :L0074A6 0.10 N29:57:24.00 W095:20:43.85 V1= 3000 V2= 0 ) RotatedCall( :L0074A8 0 0 0 ):L0074A6 Return

Share this post


Link to post
Share on other sites

Hi Jay, you can write the Area and Refpoint with variables like this.. Area( b %1 %2 %3 )RefPoint( 7 :h3 %4 %1 %2 v1= %10 %13 %14 )The Scasm uservariables for .api format macros are defined here:%1 latitude%2 longitude%3 area range%4 scale%5 rotation angle [deg]%10 long-range-visibility V1%11 object altitude%12 lower scenery density limit for object display%13

Share this post


Link to post
Share on other sites

I just want to change the API's location, not anything else. If it looks like below it will work? If so do I just right click it in Airport and select edit and scasm and change or something more? Never had to do this, but then I never have that much time to do so.Also as far as finding this renegade API/Macro that is still displayed, do I need to go through the scenery scasm file and try to find it, and how?That site is so good, I just need more time right now.Thanks again Bob,Jay

Area( b %1 %2 %3 )PerspectiveCall( :L00747A )Jump( : ):L00747APerspectiveRefPoint(7 :h3 %4 %1 %2 v1= %10 %13 %14 )RotatedCall( :L0074A8 0 0 0 ):L0074A6Return

Share this post


Link to post
Share on other sites

Jay, the label :h3 in the refpoint command was copied from the website but you need to have that label match the one two lines down from the refpoint. They can each be :h3 or they can each be :L0074A6, or they could both be :bob, but they can't be different.B

Share this post


Link to post
Share on other sites

Jay,Which version of Airport are you using? The new A290B20 makes it difficult to move APIs because of a change in the new coding (God knows why!). What I see is that on the API there is a small dot somewhere in the middle. Click this and drag and you should be able to drag the API. Alternatively you can click the macro and shift it using the arrow keys. Set the amount of movement in the preferences tab.For the stray macro issue, are you sure that your General settings were not at some point pointing to the main FS2002/scenery directory? or somewhere other than the working scenery directory. This could have caused you to compile once and placed the 3d object into another directory, and now you are deleting in your working directory, but the old one still remains.Shez

Share this post


Link to post
Share on other sites

I changed the Area and RefPoint as below in a API to see if it would reloacted to my desired spot. So I know have errors.I have been able to relocate some API's one single time and no more.I am using Apt 260 build 155 and scasm 285. I have always used the click and drag or select shift/arrow keys to move them.Thanks,JayError in line 6339 -> Area( b %1 %2 %3 ) -> illegal identifier "%"Error in line 6344 -> RefPoint( 7 :L027634 %4 %1 %2 v1= %10 %13 %14 ) -> in expression .. %4 %1 %2 v1= %10 %13 ..Error in line 20320 -> EndA -> unresolved label :L010952 in line 18513Error in line 39904 -> EndA -> unresolved label :L000E46 in line 37244Scasm compilation status: error(s) 4

Share this post


Link to post
Share on other sites

are you trying to compile the macro outside of airport, or is this errors from the entire compile?B

Share this post


Link to post
Share on other sites

The error's are for the entire compile inside Airport.I edited the macro after selecting it, right click, edit, and scasm. I just changed the areas you described.Can I not edit the macro/API inside Airport?Jay

Share this post


Link to post
Share on other sites

I'm starting to feel like I'm groping in the dark...The general approach is that a percent sign in a macro indicates a variable, and scasm understands that the value for that variable will be provided by the "call" statement. So, the order of the information provided by the statement for that macro in the main airport file must match the general .api format...of course since airport was the creator of the api format, one would assume this naturally occurs when placing a macro within airport.I wish I could be more help, but its not obvious to me why your experience with airport seems to have scasm not know that a % sign indicates a variable, or somehow airport is not filling in the variables or something.Maybe your macro doesn't have a good header?Why don't you post the scasm for both the macro, and the main sca file?

Share this post


Link to post
Share on other sites

Yes!The api must have those % signs like %1 & %2. Airport will fill the correct location at compile time.I move using the Shift and arrow keys and the Ctrl and arrow keysone iS for fine movements the other is for bigger movements.

Share this post


Link to post
Share on other sites

Hi JayYour SCASM compilation errors are caused by typing errors when you edited your macro. The first one, "illegal identifier %", probably results from putting a space between the % and the parameter number, and the problem with the RefPoint() command is probably the same. You should also use a capital B for the first parameter in Area() to be on the safe side, not a lowercase one; this letter is actually a hexadecimal digit and SCASM prefers its hex digits in capitals.Some of the other error messages will go away when you have put these right! SCASM gets itself confused checking later code once it has detected an error.Kind RegardsGerrish

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