Jump to content

Archived

This topic is now archived and is closed to further replies.

Guest Adrian

Another Rotating Bitmaps Question

Recommended Posts

Guest Adrian

Hello everybody,I recently got back into gauge development and was wondering if somebody could help me with a plane icon on the default fs9gps map element which does not rotate it. I have customised my map with Trackup=0 (North facing up). My issues are: 1. I cannot get my plane icon to be at the departure airport by default. Do I have to some fancy calculation like how many nm in a pixel or is it more simpler? 2. When I attempted to place a <rotation> and/or <nonlinearity> tag it seem my plane is moving but the plane bitmap is in the wrong position or am I using my rotation tags incorrectly? 3. When I scale my airplane icon in the <Element> attribute does my <axis> position automatically get calculated?Any simple tips for future reference of how to use bitmaps in rotations and/or general information in what to look out for because I have tried to emulate some of the features in the gps500.xml?Here is the code for my issues:

   <?xml version="1.0" encoding="UTF-16"?>      <SimBase.Document		   Type="AceXML"		   version="1,0"		   id="InFlightData">	   <Descr>AceXML Document</Descr>	   <Filename>InFlightData.xml</Filename>	   <SimGauge.Gauge id="Gauge" ArtDirectory="C:\Documents and Settings\Adrian Zagarowski\My Documents\New Gauges">		   <FloatPosition>0.000,0.000</FloatPosition>		   <Update_When_Hidden>True</Update_When_Hidden>		   <Image id="InFlightDataScreen.bmp" Name="InFlightDataScreen.bmp">			   <Transparent>True</Transparent>		   </Image>		   <Macro id="Call GPS Routines" Name="c">			   <MacroValue>C:fs9gps</MacroValue>		   </Macro>		   <Macro id="Call GPS_2D_Map Routines" Name="g">			   <MacroValue>C:fs9gps:1</MacroValue>		   </Macro>		   <Update id="Distance_To_Destination_Calculations">			   <script>(A:GPS IS ACTIVE FLIGHT PLAN, bool) if{ (A:GPS FLIGHT PLAN WP Count, number) 1 - (>@c:FlightPlanWaypointIndex) (@c:FlightPlanWaypointRemainingTotalDistance, kilometers) (>L:DistToDest, kilometers) } </Script>		   </Update>		   <Update id="Estimated_Remaining_Flight_Time_ Calculations">			   <script>(A:GPS IS ACTIVE FLIGHT PLAN, bool) if{ (A:GPS FLIGHT PLAN WP Count, number) 1 - (>@c:FlightPlanWaypointIndex) (@c:FlightPlanWaypointEstimatedTimeRemaining, hours) (>L:FlyingTimeLeftHours, hours) (@c:FlightPlanWaypointEstimatedTimeRemaining, minutes) flr 60 % (>L:FlyingTimeLeftMinutes, minutes) } </Script>		   </Update>		   <Update id="Time_At_Destination_Calculations">			   <script>(A:GPS IS ACTIVE FLIGHT PLAN, bool) if{ (A:GPS FLIGHT PLAN WP Count, number) 1 - (>@c:FlightPlanWaypointIndex) (@c:FlightPlanDestinationLongitude) (>L:DestLongitude, degrees) (@c:FlightPlanWaypointTimeZoneDeviation, hours) (>L:TimeDiffHours, hours) (@c:FlightPlanWaypointTimeZoneDeviation, minutes) flr 60 % (>L:TimeDiffMinutes, minutes) (L:DestLongitude, degrees) 0 == if{ (E:ZULU TIME, hours) (>L:DestTimeHours, hours) (E:ZULU TIME, minutes) flr 60 % (>L:DestTimeMinutes, minutes) } els{ (L:DestLongitude, degrees) 0 > if{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) + 24 >= if{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) + 24 - (>L:DestTimeHours, hours) } els{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) + (>L:DestTimeHours, hours) } (E:ZULU TIME, minutes) flr 60 % (L:TimeDiffMinutes, minutes) + (>L:DestTimeMinutes, minutes) } els{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) >= if{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) - (>L:DestTimeHours, hours) } els{ (E:ZULU TIME, hours) 24 + (L:TimeDiffHours, hours) - (>L:DestTimeHours, hours) } (E:ZULU TIME, minutes) flr 60 % (L:TimeDiffMinutes, minutes) - (>L:DestTimeMinutes, minutes) } } </Script>		   </Update>		   <Update id="UpdateScreens">			   <script>(L:Init, number) 0 == if{ (E:LOCAL TIME, seconds) (>L:Timer, seconds) 1 (>L:Init, number) 1 (>L:ScreenNumber, number) } (L:Init, number) 1 == if{ (L:Timer, seconds) (E:LOCAL TIME, seconds) - abs 10 > if{ (L:ScreenNumber, number) 4 == if{ 1 (>L:ScreenNumber, number) 0 (>L:Init, number) } els{ (L:ScreenNumber, number) 1 + (>L:ScreenNumber, number) (E:LOCAL TIME, seconds) (>L:Timer, seconds) } } } </Script>		   </Update>		   <Element id="Screen1">			   <FloatPosition>0.000,0.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 1 == (L:ScreenNumber, number) 4 == ||</Visibility>			   <Element id="Display Distance to destination">				   <FloatPosition>50.000,60.000</FloatPosition>				   <GaugeText id="Distance to destination">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Distance to\ndestination				  %((L:DistToDest, kilometers))%!-5d! km</GaugeString>					   <Length>31</Length>					   <LineSpacing>35.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Estimated arrival time">				   <FloatPosition>50.000,150.000</FloatPosition>				   <GaugeText id="Estimated arrival time">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Estimated\narrival time					  %((L:FlyingTimeLeftHours, hours))%!02d! : %((L:FlyingTimeLeftMinutes, minutes))%!02d!</GaugeString>					   <Length>27</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Time at destination">				   <FloatPosition>50.000,245.000</FloatPosition>				   <GaugeText id="Time at destination">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Time at\ndestination					  %((L:DestTimeHours, hours))%!02d! : %((L:DestTimeMinutes, minutes))%!02d!</GaugeString>					   <Length>27</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>		   </Element>		   <Element id="Screen2">			   <FloatPosition>0.000,0.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 2 ==</Visibility>			   <Element id="Display Ground speed">				   <FloatPosition>50.000,60.000</FloatPosition>				   <GaugeText id="Ground speed">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Ground speed			 %((A:GROUND VELOCITY, kph))%!-3d! km/h</GaugeString>					   <Length>25</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Size>299,40</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Altitude">				   <FloatPosition>50.000,140.000</FloatPosition>				   <GaugeText id="Altitude">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Altitude						 %((A:PLANE ALTITUDE, meters))%!-5d! m</GaugeString>					   <Length>27</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Size>299,40</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Outside air temperature">				   <FloatPosition>50.000,220.000</FloatPosition>				   <GaugeText id="Outside air temperature">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <Fixed>True</Fixed>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Outside air\ntemperature					 %((A:AMBIENT TEMPERATURE, celsius))%!-3d! \{dplo= } C</GaugeString>					   <Length>31</Length>					   <LineSpacing>35.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>		   </Element>		   <Element id="Screen3">			   <FloatPosition>30.000,30.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 3 ==</Visibility>			   <CustomDraw id="CustomDraw" Name="fs9gps:1:map">				   <Size>340,320</Size>				   <Bright>True</Bright>				   <CustomDrawParam id="UpdateAlways" Name="UpdateAlways">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Heading" Name="Heading">					   <Value>(A:GPS GROUND TRUE TRACK, Radians)</Value>				   </CustomDrawParam>				   <CustomDrawParam id="TrackUp" Name="TrackUp">					   <Value>0</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Bright" Name="Bright">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Zoom" Name="Zoom">					   <Value>926000</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Latitude" Name="Latitude">					   <Value>(A:GPS POSITION LAT, Radians)</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Longitude" Name="Longitude">					   <Value>(A:GPS POSITION LON, Radians)</Value>				   </CustomDrawParam>				   <CustomDrawParam id="LayerTerrain" Name="LayerTerrain">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="DetailLayerTerrain" Name="DetailLayerTerrain">					   <Value>3</Value>				   </CustomDrawParam>				   <CustomDrawParam id="TerrainShadow" Name="TerrainShadow">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="LayerBorders" Name="LayerBorders">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="DetailLayerBorders" Name="DetailLayerBorders">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="LayerFlightPlan" Name="LayerFlightPlan">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="FlightPlanLineWidth" Name="FlightPlanLineWidth">					   <Value>2.5</Value>				   </CustomDrawParam>				   <CustomDrawParam id="ActiveColorLayerFlightPlan" Name="ActiveColorLayerFlightPlan">					   <Value>0x7010B0</Value>				   </CustomDrawParam>				   <CustomDrawParam id="ColorLayerFlightPlan" Name="ColorLayerFlightPlan">					   <Value>0xF0F0F0</Value>				   </CustomDrawParam>			   </CustomDraw>		   </Element>		   <Element id="Screen3_AircraftIcon">			   <FloatPosition>156.000,139.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 3 ==</Visibility>			   <SizeScale>0.250</SizeScale>			   <MaskImage id="airplane_icon_mod.bmp" Name="airplane_icon_mod.bmp">				   <Axis>212.000,224.000</Axis>				   <Transparent>True</Transparent>			   </MaskImage>			   <Rotation id="Rotation">				   <PointsTo>NORTH</PointsTo>				   <Expression id="Expression">					   <Minimum>-60.000</Minimum>					   <Maximum>60.000</Maximum>					   <script>(A:GPS GROUND TRUE TRACK, Degrees)</Script>				   </Expression>			   </Rotation>		   </Element>	   </SimGauge.Gauge>   </SimBase.Document>

I have attached an screenshot of my moving mapAlso one more question does anyone know any where to get good freeware airplane icons?CheersAdrian

Share this post


Link to post
Share on other sites
Hello everybody,I recently got back into gauge development and was wondering if somebody could help me with a plane icon on the default fs9gps map element which does not rotate it. I have customised my map with Trackup=0 (North facing up). My issues are: 1. I cannot get my plane icon to be at the departure airport by default. Do I have to some fancy calculation like how many nm in a pixel or is it more simpler? 2. When I attempted to place a <rotation> and/or <nonlinearity> tag it seem my plane is moving but the plane bitmap is in the wrong position or am I using my rotation tags incorrectly? 3. When I scale my airplane icon in the <Element> attribute does my <axis> position automatically get calculated?Any simple tips for future reference of how to use bitmaps in rotations and/or general information in what to look out for because I have tried to emulate some of the features in the gps500.xml?Here is the code for my issues:
   <?xml version="1.0" encoding="UTF-16"?>      <SimBase.Document		   Type="AceXML"		   version="1,0"		   id="InFlightData">	   <Descr>AceXML Document</Descr>	   <Filename>InFlightData.xml</Filename>	   <SimGauge.Gauge id="Gauge" ArtDirectory="C:\Documents and Settings\Adrian Zagarowski\My Documents\New Gauges">		   <FloatPosition>0.000,0.000</FloatPosition>		   <Update_When_Hidden>True</Update_When_Hidden>		   <Image id="InFlightDataScreen.bmp" Name="InFlightDataScreen.bmp">			   <Transparent>True</Transparent>		   </Image>		   <Macro id="Call GPS Routines" Name="c">			   <MacroValue>C:fs9gps</MacroValue>		   </Macro>		   <Macro id="Call GPS_2D_Map Routines" Name="g">			   <MacroValue>C:fs9gps:1</MacroValue>		   </Macro>		   <Update id="Distance_To_Destination_Calculations">			   <script>(A:GPS IS ACTIVE FLIGHT PLAN, bool) if{ (A:GPS FLIGHT PLAN WP Count, number) 1 - (>@c:FlightPlanWaypointIndex) (@c:FlightPlanWaypointRemainingTotalDistance, kilometers) (>L:DistToDest, kilometers) } </Script>		   </Update>		   <Update id="Estimated_Remaining_Flight_Time_ Calculations">			   <script>(A:GPS IS ACTIVE FLIGHT PLAN, bool) if{ (A:GPS FLIGHT PLAN WP Count, number) 1 - (>@c:FlightPlanWaypointIndex) (@c:FlightPlanWaypointEstimatedTimeRemaining, hours) (>L:FlyingTimeLeftHours, hours) (@c:FlightPlanWaypointEstimatedTimeRemaining, minutes) flr 60 % (>L:FlyingTimeLeftMinutes, minutes) } </Script>		   </Update>		   <Update id="Time_At_Destination_Calculations">			   <script>(A:GPS IS ACTIVE FLIGHT PLAN, bool) if{ (A:GPS FLIGHT PLAN WP Count, number) 1 - (>@c:FlightPlanWaypointIndex) (@c:FlightPlanDestinationLongitude) (>L:DestLongitude, degrees) (@c:FlightPlanWaypointTimeZoneDeviation, hours) (>L:TimeDiffHours, hours) (@c:FlightPlanWaypointTimeZoneDeviation, minutes) flr 60 % (>L:TimeDiffMinutes, minutes) (L:DestLongitude, degrees) 0 == if{ (E:ZULU TIME, hours) (>L:DestTimeHours, hours) (E:ZULU TIME, minutes) flr 60 % (>L:DestTimeMinutes, minutes) } els{ (L:DestLongitude, degrees) 0 > if{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) + 24 >= if{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) + 24 - (>L:DestTimeHours, hours) } els{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) + (>L:DestTimeHours, hours) } (E:ZULU TIME, minutes) flr 60 % (L:TimeDiffMinutes, minutes) + (>L:DestTimeMinutes, minutes) } els{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) >= if{ (E:ZULU TIME, hours) (L:TimeDiffHours, hours) - (>L:DestTimeHours, hours) } els{ (E:ZULU TIME, hours) 24 + (L:TimeDiffHours, hours) - (>L:DestTimeHours, hours) } (E:ZULU TIME, minutes) flr 60 % (L:TimeDiffMinutes, minutes) - (>L:DestTimeMinutes, minutes) } } </Script>		   </Update>		   <Update id="UpdateScreens">			   <script>(L:Init, number) 0 == if{ (E:LOCAL TIME, seconds) (>L:Timer, seconds) 1 (>L:Init, number) 1 (>L:ScreenNumber, number) } (L:Init, number) 1 == if{ (L:Timer, seconds) (E:LOCAL TIME, seconds) - abs 10 > if{ (L:ScreenNumber, number) 4 == if{ 1 (>L:ScreenNumber, number) 0 (>L:Init, number) } els{ (L:ScreenNumber, number) 1 + (>L:ScreenNumber, number) (E:LOCAL TIME, seconds) (>L:Timer, seconds) } } } </Script>		   </Update>		   <Element id="Screen1">			   <FloatPosition>0.000,0.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 1 == (L:ScreenNumber, number) 4 == ||</Visibility>			   <Element id="Display Distance to destination">				   <FloatPosition>50.000,60.000</FloatPosition>				   <GaugeText id="Distance to destination">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Distance to\ndestination				  %((L:DistToDest, kilometers))%!-5d! km</GaugeString>					   <Length>31</Length>					   <LineSpacing>35.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Estimated arrival time">				   <FloatPosition>50.000,150.000</FloatPosition>				   <GaugeText id="Estimated arrival time">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Estimated\narrival time					  %((L:FlyingTimeLeftHours, hours))%!02d! : %((L:FlyingTimeLeftMinutes, minutes))%!02d!</GaugeString>					   <Length>27</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Time at destination">				   <FloatPosition>50.000,245.000</FloatPosition>				   <GaugeText id="Time at destination">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Time at\ndestination					  %((L:DestTimeHours, hours))%!02d! : %((L:DestTimeMinutes, minutes))%!02d!</GaugeString>					   <Length>27</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>		   </Element>		   <Element id="Screen2">			   <FloatPosition>0.000,0.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 2 ==</Visibility>			   <Element id="Display Ground speed">				   <FloatPosition>50.000,60.000</FloatPosition>				   <GaugeText id="Ground speed">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Ground speed			 %((A:GROUND VELOCITY, kph))%!-3d! km/h</GaugeString>					   <Length>25</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Size>299,40</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Altitude">				   <FloatPosition>50.000,140.000</FloatPosition>				   <GaugeText id="Altitude">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Altitude						 %((A:PLANE ALTITUDE, meters))%!-5d! m</GaugeString>					   <Length>27</Length>					   <LineSpacing>40.000</LineSpacing>					   <Luminous>True</Luminous>					   <Size>299,40</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>			   <Element id="Display Outside air temperature">				   <FloatPosition>50.000,220.000</FloatPosition>				   <GaugeText id="Outside air temperature">					   <Bold>True</Bold>					   <Bright>True</Bright>					   <Fixed>True</Fixed>					   <FontColor>0x00FFFF</FontColor>					   <FontFace>Helvetica</FontFace>					   <FontHeight>20</FontHeight>					   <GaugeString>Outside air\ntemperature					 %((A:AMBIENT TEMPERATURE, celsius))%!-3d! \{dplo= } C</GaugeString>					   <Length>31</Length>					   <LineSpacing>35.000</LineSpacing>					   <Luminous>True</Luminous>					   <Multiline>True</Multiline>					   <Size>299,80</Size>					   <Transparent>True</Transparent>					   <VerticalAlign>CENTER</VerticalAlign>				   </GaugeText>			   </Element>		   </Element>		   <Element id="Screen3">			   <FloatPosition>30.000,30.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 3 ==</Visibility>			   <CustomDraw id="CustomDraw" Name="fs9gps:1:map">				   <Size>340,320</Size>				   <Bright>True</Bright>				   <CustomDrawParam id="UpdateAlways" Name="UpdateAlways">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Heading" Name="Heading">					   <Value>(A:GPS GROUND TRUE TRACK, Radians)</Value>				   </CustomDrawParam>				   <CustomDrawParam id="TrackUp" Name="TrackUp">					   <Value>0</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Bright" Name="Bright">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Zoom" Name="Zoom">					   <Value>926000</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Latitude" Name="Latitude">					   <Value>(A:GPS POSITION LAT, Radians)</Value>				   </CustomDrawParam>				   <CustomDrawParam id="Longitude" Name="Longitude">					   <Value>(A:GPS POSITION LON, Radians)</Value>				   </CustomDrawParam>				   <CustomDrawParam id="LayerTerrain" Name="LayerTerrain">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="DetailLayerTerrain" Name="DetailLayerTerrain">					   <Value>3</Value>				   </CustomDrawParam>				   <CustomDrawParam id="TerrainShadow" Name="TerrainShadow">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="LayerBorders" Name="LayerBorders">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="DetailLayerBorders" Name="DetailLayerBorders">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="LayerFlightPlan" Name="LayerFlightPlan">					   <Value>1</Value>				   </CustomDrawParam>				   <CustomDrawParam id="FlightPlanLineWidth" Name="FlightPlanLineWidth">					   <Value>2.5</Value>				   </CustomDrawParam>				   <CustomDrawParam id="ActiveColorLayerFlightPlan" Name="ActiveColorLayerFlightPlan">					   <Value>0x7010B0</Value>				   </CustomDrawParam>				   <CustomDrawParam id="ColorLayerFlightPlan" Name="ColorLayerFlightPlan">					   <Value>0xF0F0F0</Value>				   </CustomDrawParam>			   </CustomDraw>		   </Element>		   <Element id="Screen3_AircraftIcon">			   <FloatPosition>156.000,139.000</FloatPosition>			   <Visibility>(L:ScreenNumber, number) 3 ==</Visibility>			   <SizeScale>0.250</SizeScale>			   <MaskImage id="airplane_icon_mod.bmp" Name="airplane_icon_mod.bmp">				   <Axis>212.000,224.000</Axis>				   <Transparent>True</Transparent>			   </MaskImage>			   <Rotation id="Rotation">				   <PointsTo>NORTH</PointsTo>				   <Expression id="Expression">					   <Minimum>-60.000</Minimum>					   <Maximum>60.000</Maximum>					   <script>(A:GPS GROUND TRUE TRACK, Degrees)</Script>				   </Expression>			   </Rotation>		   </Element>	   </SimGauge.Gauge>   </SimBase.Document>

I have attached an screenshot of my moving mapAlso one more question does anyone know any where to get good freeware airplane icons?CheersAdrian


Paul EGLD

Share this post


Link to post
Share on other sites

Paul, why did you re-quote the entire message and yet add nothing at all in your reply? :(


Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556

Interests: Gauge Programming - 3d Modeling for Milviz

Many Thanks to All That Donated To Our Server Drive!

Share this post


Link to post
Share on other sites

Because I pressed the wrong key :( North up can be done. I can't get your code to work do you want to post the working gauge. If not I can see the departure alignment is a background map position/zoom problem. You can shift and rotate the aircraft icon using the track values.


Paul EGLD

Share this post


Link to post
Share on other sites
Guest Adrian
Because I pressed the wrong key :( North up can be done. I can't get your code to work do you want to post the working gauge. If not I can see the departure alignment is a background map position/zoom problem. You can shift and rotate the aircraft icon using the track values.
Hi Paul,Thanks for the tips and I think I will have to go back to basics to really understand rotating bitmaps, perhaps 1 black background and 1 smaller white square and then play around with rotation values using shift etc. I should just apply the KISS principle whenever things get hard.CheersAdrian

Share this post


Link to post
Share on other sites

Here are a few things to keep in mind.1. The a/c icon does not move, the map moves to keep the current position centered.2. You can rotate the a/c icon while the map remains oriented NORTH, or you can rotate the map and leave the a/c icon pointed NORTH.3. When it is needed to do both a shift and a rotate on any element, remember the order is always shift THEN rotate.


Fr. Bill    

AOPA Member: 07141481 AARP Member: 3209010556

Interests: Gauge Programming - 3d Modeling for Milviz

Many Thanks to All That Donated To Our Server Drive!

Share this post


Link to post
Share on other sites
Guest bobby27ph

Hi Andy,D'you have any FS2004 version of this inflight data gauge you developed (inflightentertainment.zip)? Or anything you can recommend?

Share this post


Link to post
Share on other sites

×
×
  • Create New...