Select an object from a collection in anylogic? - collections

I need to simulate an earthquake on my GIS map. I've created some regions on my GIS map and I've created a collection in which put these regions. Now, I need to create a function which choose one of these regions (which may a probability for each one) and in this choosen region model have to locate eartquake epicenter (I created an agent called earthquake).
1- How can I type this code in my body function?
2- Which type of collection do I need to choose (e.g. "Linked List", "Tree map". etc.) ?
3- How can I create after this, earthquake latitude and longitude (I need to send Tir agent on epicenter) ?
I upload below pics to make understandable.
enter image description here
enter image description here

Spontaneous idea:
I would work with an array list, each line is a region as a string.
Then use another variable to find out which region you need (e.g. use a normal distribution, if the value is above a threshold it is region B, otherwise it is A).
As region A and B are in different lines of the collection, your i for the following code changes: collection.get(i);.

Related

Report Builder MAP Parameters

Good Afternoon,
So I have built a State Map in Report builder that is separated into Counties. I have been pretty successful, however there is one thing I cannot figure out. When I click on the county, is it possible to pass the county name that I clicked to a chart on the same report. I can pass it to another report via go to report, but I would like to have it on the same document.I also kept getting a Subreport not found when I attempted that method. Any help is greatly appreciated.
Thanks!
A basic rule of SSRS is that with very few exceptions, you cannot change the content of a report unless you refresh the report.
Bearing this in mind, you have a couple of options..
Call the same report again as a subreport.
Assuming you only want your map and a single dynamic chart.
Add a parameter to the report that defaults to specific value such as 'none'. Then you can decide what do show in your chart when the parameter = 'none' or you could choose the hide the chart if the parameter is 'none'.
In your map go to the map's polygon properties and assign an action.
Set the action to be Go to Report
Choose your report (so we get the report to call itself)
Add a parameter, choose the parameter you added a few steps earlier as the name and select the field that contains the state name or ID etc as the value.
Your Chart's dataset can then be updated to use the new parameter in the dataset query.
Create a chart for every State
The other option is to create a chart for every state, you can do this using a table or list control and a subreport containing your chart, so you design will not have to have lots of charts individually placed.
Each Chart can have a bookmark set (most objects have a bookmark property) that is the name or ID of the state it represents.
Then in your map, set the action properties in the polygon properties to 'Go to bookmark' and then use the state name or ID as the bookmark expression to go to.

Here Fleet Telematics admin area

I am using fleet telematics and accessing tile for kuwait. If a place is present into two tiles I combine combine all coordinates from all rows for that place and convert that coordinates into polygon.
Please see the image below as i see weird polygons.
To get the city bounds of Kuwait city admin area, you may want to use ADMIN_POLY_8.
If you query that layer, you will notice that the ADMIN_LEVEL attribute here is '4' which corresponds to city.
To understand which layer to pick, check the description of the layer on sending this call
https://s.fleet.ls.hereapi.com/1/doc/layer.json?layer=ADMIN_POLY_8&apiKey={{RESTapiKey}}
In the response, you will see the attribute 'ADMIN_LEVEL' which says 'Administrative level 1 - 9.To look up the country specific name/meaning, applications can load the static table {COUNTRY} and fetch the value from column'
When you query the static layer 'COUNTRY' , you will see that 'ADMIN_LEVEL_DESCRIPTION_4' corresponds to city.
This is how you can find out which layer to choose.
you have selected ADMIN_POLY_9 which has places with ADMIN_LEVEL 5.
This gives you the geometric bounds of SETTLEMENT within the city and thus the multiple polygons.

Filter Google Places API results based on City

For one of my applications, I will let the users choose a City and then an Area. What I want to achieve is that based on the user's city selection, the Area field(which is using the autocomplete from Google Places) to display areas from that City. Eg: If user chooses the city as New York, the Area field should autocomplete only the areas from New York. Is this something which can be achieved?
1] In autocomplete API, pass the "Lat,Long" in "location" parameter and "100000" in "radius" parameter. It will bias search result within 100Km in that city.
Eg: Pass "40.7128,74.0059" for NewYork and it will give you result within 100Km in NewYork city.
OR
2] There is a trick you can use.If a user chooses a city, just add the city name as a prefix in the search string. It will only give the search suggestions in which the user is searching. eg, pass "NewYork" as a prefix in your search string, now type any word, it will only give you results for NewYork city restaurant, cafes, places, etc
You can do it by restricting the results of your autocomplete by a specified area.
Here are the ways that you can use:
Location Biasing - you may bias the results to a specified circle by passing a location and a radius parameter. This instructs the Place Autocomplete service to prefer showing results within that circle. Results outside of the defined area may still be displayed. You can use the components parameter to filter results to show only those places within a specified country.
Location Restrict - it can restrict the results to the region defined by location and a radius parameter, by adding the strictbounds parameter. This instructs the Place Autocomplete service to return only results within that region.
Places Types - you can restrict results from a Place Autocomplete request to be of a certain type by passing a types parameter. The parameter specifies a type or a type collection, as listed in the supported types below. If nothing is specified, all types are returned.
Hope this information helps you.

Link to primary and secondary data sources in Tableau

I’m trying to create a dashboard filter in Tableau. All but one of my graphs have the same primary data source A. The filter will affect all these graphs as intended. However I have one sheet where the primary data source is B, and the secondary data source is A. I can’t get this particular graph to link to the quick filter I’ve created. Does anyone know of a workaround for this?
The easiest way to filter multiple data sources from a single user control is to use a parameter along with calculated fields in each data source that reference the parameter setting. The calculated fields can then be put on the filter shelf for the appropriate worksheets.
This solution doesn't fit every circumstance.
Parameters can only have a single value, and the list of arbitrary values must either be defined statically in the workbook or allow the user to enter an arbitrary value. You can't dynamically lookup the list of legal parameter values in a database table (although you can use a field to populate the list initially).
Parameters are independent of any data source.
So if these restrictions don't hamper your use case, then you can have one parameter control on a dashboard that influences the filters applied to many worksheets. The simplest calculated field used for filtering could just say [My_Field] = [My_Parameter]. You can allow extend this idea to define parameter values that reference multiple choices like: "A", "B", "A and B" and then adjust your calculated fields accordingly. At some point, this approach gets unwieldy.
Another approach is use a worksheet as a filter, by displaying marks for each option, and then using filter actions to use the selected marks to filter other worksheets. This approach allows multiple selection, and dynamically loading choices from a database table.

Display marker over dicom image from CADSR file that are necessary to show

I am trying to read an CADSR file I get an various marker from "Graphics Data Tag" I want to show only those marker over the Dicom file that are necessary so let me know what criteria is required to showing up the necessary marker over dicom image
This is the actual output that shown in below image
but I get such kind of Image opuput which is wrong
In the wrong O/P Image there are multiple markers at specific location I want to combine that marker and show single marker as Star for this.Also one marker is not required that display the out of scope of image that marker I don't want to display so how it can be handle from dicom tags or any things required to do.
You are drawing everything that has a graphic data type. So you are showing the centre of the breast and the nipple.
The cluster of marks is a calcification cluster. A calcification cluster contains multiple calcifications each with their own graphic data type.
Look at the documentation for the R2 Server. You are interested in three objects Malcs, Calcs and Mass. A Malc contains a Mass and a calcifiation cluster which you will need to take account of.

Resources