Can you help me with fake steam (Sketchup if possible)?
Posts by TomSimMuc
-
-
-
- run scenProc for all red lights with a 30-sec "on" time and a random delay generated for each one (10sec, 20sec, or 30sec)
Could you post your ScenProc script, after you found out the details?
Cheers,
Thomas
-
-
Traffic on motorways. Autogen on every node.
To all 3D modellers: we need low/medium-poly count 3D models for cars and trucks! (N-S orientation)
Offset for cars, left lane: 0.9m
Offset for trucks, right lane: -0.8m
Code
Display More<!-- ============================================================================================ --> <!-- Mototway scenario, cars adjusted to lane direction Expected results: - orientation follows lane --> <wayConfiguration> <selectionCriteria> <andCriteria> <keyValueEntry key="highway" value="motorway" /> </andCriteria> </selectionCriteria> <defaultModel name=""/> <referencedNodes> <derivedTags> <randomInteger derivedTagName ="randomInteger" upperLimit="4" /> </derivedTags> <modelNameMapping> <mapEntry key="randomInteger" value="1" name="Cars\Truck_Red\truck_red"/> <mapEntry key="randomInteger" value="2" name="Cars\Car_Red\car_red"/> <mapEntry key="randomInteger" value="3" name="Cars\Car_white\car_white"/> <mapEntry key="randomInteger" value="4" name="Cars\Car_Grey\car_grey"/> </modelNameMapping> </referencedNodes> </wayConfiguration>
-
Hello Ken,
an interesting idea.
As far as I know, lights can only be defined in a TOC file.
If Stu likes the idea, he could create a toc together with the tsc file (and include the toc call).
I played a bit with traffic lights, with the aim to have an automatic switching between green - yello - red.
With the below lines I managed to get a 22 sec green, 2 sec yellow and 22 sec red phase. The disadvantge is, that scenproc then only generates the same signal colors for the whole city. And random color is not possible; otherwise the signals would not sequence the colors.
# Traffic signals
CreateAF2Light|highway="traffic_signals"|1.0;0.0;0.0|5|0.15;0;6|5
CreateAF2Light|highway="traffic_signals"|0.0;1.0;0.0|5|0.15;3;6|5
But with Stu's program he maybe could assign the following:
All streets in E-W direction which have the attribut highway="traffic_signal" get this light:
Code
Display More<[light][element][4333] <[vector3_float64][position][7.581755 52.272758 5.000000]> <[vector3_float32][color][1.000000 0.000000 0.000000]> <[float32][intensity][5.000000]> <[vector4_float32][flashing][0.150000 0.000000 6.000000 0]> <[uint32][group_index][0]> > <[light][element][4334] <[vector3_float64][position][7.581755 52.272758 5.000000]> <[vector3_float32][color][0.000000 1.000000 0.000000]> <[float32][intensity][5.000000]> <[vector4_float32][flashing][0.150000 3.000000 6.000000 0]> <[uint32][group_index][0]> >
and all streets in N-S direction which have the attribut "traffic_signal" get that light:
Code
Display More<[light][element][4330] <[vector3_float64][position][7.591755 52.292758 5.000000]> <[vector3_float32][color][0.000000 1.000000 0.000000]> <[float32][intensity][5.000000]> <[vector4_float32][flashing][0.150000 0.000000 6.000000 0]> <[uint32][group_index][0]> > <[light][element][4331] <[vector3_float64][position][7.591755 52.292758 5.000000]> <[vector3_float32][color][1.000000 0.000000 0.000000]> <[float32][intensity][5.000000]> <[vector4_float32][flashing][0.150000 3.000000 6.000000 0]> <[uint32][group_index][0]> >
Optionally the toc generation could also take care of lights assigned to a model:
high chimneys, wind generators, railroad crossings and signals ...
What do you and Stu think?
-
Autogen Ships:
The script looks for the key="seamark:type" value="distance_mark" to position a ship.
I converted the ship models with a 50% ratio to run into the opposite direction.
Code
Display More<!-- ============================================================================================ --> <!-- Chanal scenario, ships adjusted to chanel direction Expected results: - extraneous untagged node is to ignored. - orientation follows tagged node path not extraneous node. --> <wayConfiguration> <selectionCriteria> <andCriteria> <keyValueEntry key="waterway" value="canal" /> </andCriteria> </selectionCriteria> <defaultModel name=""/> <referencedNodes> <selectionCriteria> <andCriteria> <keyValueEntry key="seamark:type" value="distance_mark" /> </andCriteria> </selectionCriteria> <derivedTags> <randomInteger derivedTagName ="randomInteger" upperLimit="2" /> </derivedTags> <modelNameMapping> <mapEntry key="randomInteger" value="1" name="Ships\ship_channel_open\ship_channel_open"/> <mapEntry key="randomInteger" value="2" name="Ships\ship_channel_empty\ship_channel_empty"/> </modelNameMapping> </referencedNodes> </wayConfiguration>
Storage Tank Script:
Code
Display More<!-- ============================================================================================ --> <!-- #0.3.1.2a one object with derived diameter tag Expected results: row of tanks descending in size from the north --> <wayConfiguration> <selectionCriteria> <andCriteria> <keyValueEntry key="man_made" value="storage_tank" /> </andCriteria> </selectionCriteria> <defaultModel name=""/> <oneObject> <derivedTags> <wayLength derivedTagName="derivedLength" roundTo="1"/> <diameter derivedTagName ="derivedDiameter" roundTo="5" /> </derivedTags> <modelNameMapping> <mapEntry key="derivedDiameter" value="5" name="StorageTanks\10mflat\10mflat"/> <mapEntry key="derivedDiameter" value="10" name="StorageTanks\10mflat\10mflat"/> <mapEntry key="derivedDiameter" value="15" name="StorageTanks\15mflat\15mflat"/> <mapEntry key="derivedDiameter" value="20" name="StorageTanks\20mFlatRailing\20mflatrailing"/> <mapEntry key="derivedDiameter" value="25" name="StorageTanks\30mflat\30mflat"/> <mapEntry key="derivedDiameter" value="30" name="StorageTanks\30mDome\30mdome"/> <mapEntry key="derivedDiameter" value="35" name="StorageTanks\30m_steelDome\30m_steeldome"/> <mapEntry key="derivedDiameter" value="40" name="StorageTanks\40mDome\40mdome"/> <mapEntry key="derivedDiameter" value="45" name="StorageTanks\40mDome\40mdome"/> <mapEntry key="derivedDiameter" value="50" name="StorageTanks\50mDome\50mdome"/> <mapEntry key="derivedDiameter" value="55" name="StorageTanks\55mPOL\55mpol"/> <mapEntry key="derivedDiameter" value="60" name="StorageTanks\60mPOL\60mpol"/> <mapEntry key="derivedDiameter" value="65" name="StorageTanks\65mPOL\65mpol"/> <mapEntry key="derivedDiameter" value="70" name="StorageTanks\70mPOL\70mpol"/> <mapEntry key="derivedDiameter" value="75" name="StorageTanks\75mPOL\75mpol"/> <mapEntry key="derivedDiameter" value="80" name="StorageTanks\80mPOL\80mpol"/> <mapEntry key="derivedDiameter" value="85" name="StorageTanks\80mPOL\80mpol"/> </modelNameMapping> </oneObject> </wayConfiguration>
Chimneys:
Code
Display More<!-- ============================================================================================ --> <!-- chimney from center point node. If no way is defined a single node at the center can be used--> <nodeConfiguration> <selectionCriteria> <andCriteria> <keyValueEntry key="man_made" value="chimney" /> </andCriteria> </selectionCriteria> <defaultModel name="nl\gen_29p_chimney_05" /> </nodeConfiguration>
-
Yes, but you have to look down to see the pedals
-
Thanks Stu for the receipe!
Is there maybe a bug in the derivedWayLenght calculation?
When derivedWayLenght is the only selection, then the final multiplication with the RoundTo value does not seem to happen.
In combination with derivedDiameter however it does. From the tst.tsc:
Code
Display More#------------------------------------------------------------------------------------------ # wayId=-365118 building:yes man_made:storage_tank test:case:#0.3.1.2 oneObject with derived diameter tag #:derivedWayLength:57 #:derivedDiameter:20 #------------------------------------------------------------------------------------------ <[tmsimulator_scenery_object][element][0] #nodeid = virtual <[string8][type][object]> <[string8][geometry][..\..\objects\StorageTanks\20mflat\20Mflat]> <[vector3_float64][position][6.541427 46.445304 0]> <[float64][orientation][]> <[int32][autoheight_override][-1]> > #------------------------------------------------------------------------------------------ # wayId=-922073 building:yes man_made:storage_tank test:case:#0.3.1.3 oneObject with derived wayLength tag #:derivedWayLength:2 #------------------------------------------------------------------------------------------ <[tmsimulator_scenery_object][element][0] #nodeid = virtual <[string8][type][object]> <[string8][geometry][..\..\objects\StorageTanks\20mflat\20Mflat]> <[vector3_float64][position][6.54142 46.449164 0]> <[float64][orientation][]> <[int32][autoheight_override][-1]> >
-
Hi Stu,
again a big step forward with the time scale variation in wind parks.
Do I have to understand the Round parameter in the way, that i.e. waylength is devided by the round faktor?
Then you compare the result against the mapEntry value?
Also very nice, the 3D-Digits in the testfile.
Can you tell me how you generated the digit models?
by the way, these two are incidentially swapped:
superb view:
-
For those interested:
I converted the user guide into a md and html format.
PS: for me the test.bat only works, if the content is modified to:
ObjectGen.exe test.osm test.XML
-
After lenidcamper will have finished his osm2AFSobject project, this can be done on the fly...
If you installed the free DLC ORBX_Swiss cultivation, you may rename
...\common\Aerofly FS 2 Flight Simulator AddOns\scenery\orbx_switzerland_cultivation\places\classic_walls\area28.tsc to area28.off to supress the colliding houses.
Edit 30.03.2019:
The scenery is now officially published and can be downloaded here:
-
Hello Stu,
I played now quite a bit with version 0.3.
Most of it is running very fine!
I think I found a small bug:
if the scenery is small and only contains ways, but no nodes, then I get this error message:
#------------------------------------------------------------------------------------------
# wayId=564837261 building:yes
#------------------------------------------------------------------------------------------
#------------------------------------------------------------------------------------------
# wayId=595751587 building:yes
#------------------------------------------------------------------------------------------
No nodes detected within bounds. No tsc generated.
The same happens, if nodes are within the OSM, but the XML does not request one.
No tsc is generated then.
I also tried to play with the derivedLenth parameter.
I tried the test.OSM with a modified test.xml:
Code
Display More<!-- ============================================================================================ --> <!-- #0.3.1.2b one object with derived length tag Expected results: row of tanks descending in size from the north --> <wayConfiguration> <selectionCriteria> <andCriteria> <keyValueEntry key="man_made" value="storage_tank" /> <keyValueEntry key="test:case" value="#0.3.1.2 oneObject with derived diameter tag"/> </andCriteria> </selectionCriteria> <defaultModel name=""/> <oneObject> <derivedTags> <length derivedTagName="derivedLength" roundTo="10"/> <diameter derivedTagName ="derivedDiameter" roundTo="10" /> </derivedTags> <modelNameMapping> <mapEntry key="derivedLength" value="50" name="StorageTanks\10mflat\10mflat"/> <mapEntry key="derivedLength" value="70" name="StorageTanks\20mflat\20mflat"/> <mapEntry key="derivedLength" value="90" name="StorageTanks\30mDome\30mdome"/> <mapEntry key="derivedLength" value="110" name="StorageTanks\40mDome\40mdome"/> <mapEntry key="derivedLength" value="130" name="StorageTanks\50mDome\50mdome"/> </modelNameMapping> </oneObject> </wayConfiguration>
I looked up the way lenghts of the 4 tanks in JOSM.
They are 129, 98, 81, 56m.
However none of the conditions triggered.
Could you have a look please, what would be the correct parameters?
I do all this in preparition when the building direction is implemented.
I would like to see churches and houses to be replaced by real objects, not cultivation.
With the derivedDiameter parameter I had partial success, but not deterministic:. That means I could not find out, why some houses triggered and others not.
These are xref objects, converted into tmb by Phil for his FScloudPort project.
So all airport objects are available this way.
-
It already would be a great help, if nickhod could fetch OSM data according to his tiles with AeroScenery.
Then call ScenProc and osm2AFSobject with ajusted parameters afterwards.
Of cause additional work has to flow into these "adjustments" (selection of needed objects and exclusion from Scenproc).
Also a model library with free objects have to be built up.
This will not be an ideal optimized scenery, but much more then the avarage user will be able to develop.
-
Thank you Stu for this update.
What a nice variety of automated assigned possible model sizes!
Am am still working to understand all your new commands / parameters.
I will assign them to my own scripts and will report later about my tries.
If someone prefers the manual in German, I'll attach it here ( .html and .md format).
-
Yes, Stu you are right, one can put a lot of effort into a perfect cultivation.
But then I think to myself: I am not ORBX which needs to earn money with it.
However I am willing to put more efforts to locations that I know and love, then into others.
Do you think such a small size of 0.1 deg (about 5km in Germany) is really needed?
I found that a tile 10 (about 23 km) is still small enough to be loaded on the fly.
-
This is, what I was waiting for since long time.
I yet saw, what a difference it already made with moving wind generator mills.
I am looking forward to be able to insert animated vehicles into my own scenery.
-
Well done with these nice details!
-
My idea for the far future
A program or script which does the following:
Select needed area with a modified Grid generator (level 10 tiles)
Select the needed objects per GUI checkmarks.
A model library containing the typical objects with alternates.
Fetching the osm data as tile 10 size.
Calling Scenproc with adapted script and elimination of osm2AFS objects
Calling osm2AFS with the adapted script according to the checkmarks
Copying the files: (control tsc for toc, toc itself and tsc from osm2AFS) to appropriate places directory, based on grid tile name
The goal should be minimal user interaction (and no editing of OSM data).
A kind of ini file, editable for the more experienced should allow to add additional models and scenes could contain the pathes to them. This should allow to modular combine the needed scenarios per checkmarks.
The tile 10 names and coordinates can be taken from vogel69 s tool: Grid generator: https://flight-sim.org/filebase/index…grid-generator/
If an adaption is needed, he maybe will help.
Also nickhod Aeroscenery could be a good starting point, as it already knows about tile grid and shows a map. https://github.com/nickhod/aeroscenery
Tile 10 size is not too big to cause major delays during loading.
What does this community think?
Google Earth pro with level10 tiles
I already do this semi-automated with some batch/drop files, but a programmer is needed to do it fully automated.
-
OK, Thank you.