Plotting Irregular Shapes in FileMaker Maps

SeedCode’s ProMaps template comes with support for “neighborhoods” or areas: shapes our users employ to depict things like sales territories or city borders. Usually, these areas are a single, contiguous shape, like the neighborhoods in Seattle shown in red below in a stock copy of ProMaps.

Google Maps Template for FileMaker

Stock copy of ProMaps showing neighborhood areas in red

But what if an area consists of multiple separated shapes? Much of the time, city, municipal, and congressional boundaries are not just made up of one simple shape, but a set of multiple shapes. Or maybe you want to represent something like national forest boundaries or oil fields as in the examples below:

Areas in ProMaps for FileMaker

Oil fields in Indiana; all red areas are one “area” in ProMaps
Oil fields in FileMaker Pro Maps

Zoomed in on oil fields.

It turns out that this can be done with a very small tweak to ProMaps. To do this, we need to first define how to separate the multiple arrays of latitude/longitude pairs for one area. For this example, we’ll stick with formatting similar to JSON. This means each polygon will be wrapped in brackets ( [ ] ), and separated with a comma. When specifying multiple polygons, our object is going to be an array of arrays, so everything will need to be enclosed in brackets to define it as a single array object. Here’s the template for how multi-polygon area data should look:

[[lat,lng
lat,lng],
[lat,lng
lat,lng]]

The next step is to update the “Set Variable [ $sc_areaBorderCoordinates…” script step on line 26 of the “Export Map HTML” script. We’ll update the calculation value with the following:

List (
$sc_areaBorderCoordinates ;
"[\"" &
Substitute ( $sc_AreaDataRecord ; [ "],\n[" ; "%%" ]  ; [ "[" ; "" ] ; [ "]" ; "" ] ; ["%%" ; "\"],[\"" ] ; ["\n" ; "\"¶\"" ])
& "\"]"
)

It’s important to note that we’re sticking with ProMaps’ use of return characters to indicate the separation between each lat/long pair. Because of this, it’s vital that you follow the format in the example (no extra line breaks), or the substitute function will result in a malformed object.

With this one script change and formatted data, you’ll be able to see multiple polygons drawn on the map for a single area!

[ba-button link=”https://www.seedcode.com/promaps/” color=”Yellow” target=”blank”]Learn more about the ProMaps template[/ba-button]

Featured Posts

Follow Along

Stay up to date with the latest news & examples from SeedCode

Leave a Reply

Your email address will not be published. Required fields are marked *

Check out some of our other posts ...

New Week Views in DayBack for FileMaker

You can now expand DayBack’s week views to show two or three weeks at a time. We’ve been using this internally in beta mode for a few weeks, and it’s very helpful to see what’s coming up next week while navigating this week’s work. Find tips on how to work with these new views on the DayBack blog.

To-Do Lists in FileMaker – New in DayBack Calendar

Now create and manage FileMaker to-do lists directly from the Unscheduled Items sidebar in DayBack Calendar. Our latest extension brings to-do behavior to any FileMaker table. Like unscheduled items, this behavior is based on a new checkbox field in your table, so some or all of your records in the table can be treated as to-dos. Mark your to-do’s done as you complete them, or drag them into the calendar to schedule time to work on them. See it in action here: Customize Your To-Do Lists This extension was designed to be pretty a scaffold onto which you could build your own, more specific to-do behaviors by customizing the action itself or the FileMaker scripts tha manipulate events. Here are some ideas to get you started. Add To-Do Lists to Your FileMaker Calendar If you haven’t already enabled the unscheduled sidebar along DayBack’s right edge, you can learn how to turn that on here: unscheduled items in DayBack. Then, download the custom action and learn how to configure it here: To-Do Lists in DayBack Calendar.

Improved Resource Selection

We’ve made some big changes to how you filter and assign resources when editing events in DayBack. These changes will make it much easier to work with large numbers of resources, especially for folks assigning multiple resources to the same event. Watch a video of the new behaviors and learn more here: Adding Multiple Resources to an Item. If you haven’t looked at your resource field mapping in a while, here is how you set that up: Mapping the Resource Field in FileMaker. Please get in touch if you have any questions about this; we’re here to help.

Suggesting Appointment Slots

Show Available Slots that Match Multiple Criteria Schedulers often look for gaps in their schedules to find the open resources for each opportunity. But sometimes, gaps don’t tell the whole story. You may have invisible criteria like skill-matching, cleaning requirements, or multiple resources to schedule at once. Or you may be on the phone with an opportunity and must suggest available times as quickly as possible. In these cases, DayBack can suggest the best slots that match all of your requirements. Scheduling Criteria Are Often Invisible In the movie above, schedulers can see openings for the two technicians, but they can’t easily see if the required rooms and equipment are free at the same time. While DayBack can show different types of resources simultaneously, as the number of criteria increases, it can be hard for schedulers to see everything at once and still make good decisions. Our customers often have rules that constrain when an otherwise open slot can be scheduled. Here are some of the invisible criteria we’ve built out for customers: Because DayBack is highly scriptable, it can scrub open slots against a variety of criteria to render just the slots that fit all your requirements. When multiple slots match, DayBack can even rank them so you can present the most ideal slots to your clients first. You Have to *See* Slots in Context to Make the Best Decisions Many scheduling apps present possible appointments as a list of dates and times. Without showing more information about each slot, schedulers can book days too tightly, always suggest the same providers first, or create huge gaps in some provider’s schedules. Ranking slots can help, but we’ve found that highlighting ideal slots alongside existing appointments gives schedulers the information they need to make the best decisions. We’ve seen schedulers quickly offer to split appointments or to slightly change services when they see available slots in the context of other appointments, trainings, vacations, and breaks. Getting Started We customize the recommendation of slots for each deployment as part of DayBack’s implementation packages. Please get in touch if you think DayBack could make a big impact on your team.

COMPANY

FOLLOW ALONG

Stay up to date with the latest news & examples from SeedCode

© 2024 SeedCode, Inc.