How to make a map pin shape; struggling with EllipicalArcTo & RelCubBezTo

Started by miless2111s, March 06, 2025, 03:50:56 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

miless2111s

I am trying to make a shape similar to the location pins you see on maps and I'm struggling with the EllipicalArcTo geometry control; I'm struggling to understand exactly what the AB / CD controls do.

I have managed to make something close but the lower curves aren't cutting it in terms of the look :(

Is there any way to visualise what the control points are going so that I can work out how to better blend the Upper curve and the down curves and give the lower curve a slightly more generous curve so that the wall thickness from the central circle doesn't narrow do much and it can all look more professional?

It would be great if there was a way as I also struggled with the RelCubBezTo type as well :)

I would like to have the circular area inside as part of the shape, so that I don't need to use a grouped shape.

wapperdude

Making this shape look professional is difficult because Visio doesn't do bezier (sp?) very well.  I found it easiest to draw a triangle, then use pencil tool to move the inflection point to get the desired "guitar pic" shape.  Then, overlay a circle, size as desired, select both shapes and then (assuming you have Developer tab activated), Developer>Operations>Combine.  The combine creates a single shape, with region cutout where the two overlap.  I modified your drawing, added page 2 to help visualize the process.

In the shapesheet, some of the formulas have guard function added.  This helps keep symmetry.
Visio 2019 Pro

Nikolay

From a practical point of view, an easy way is to get a ready-to-use SVG icon and just transform it into a Visio shape (Ungroup => Ungroup => Ungroup)

Example:
https://www.svgrepo.com/svg/103810/map-pin



VSDX attached

wapperdude

Certainly, Nikolay provides nice method to achieve a nice looking map pin.

I gave the totally custom approach more thought, and have added page 3 which seems to have somewhat easier method.  It takes a standard right triangle, overlays a circle, centered at the right angle corner.  Then expands the circles width plus slight offset until circle and upper triangle vertex are tangential.  Next, duplicate, vertically flip triangle, and then butt align the 2 triangles.  (There may be some artifacts that need elimination.)  Finally, select all three shapes and do a union operation.  Overlay a 2nd circle as desired and do a Combine operation.  Done.

See page 3.
Visio 2019 Pro

Nikolay

BTW, yet another option - you can ask Chat GPT to make an SVG pin shape.
Then the result may be much "cleaner" (minimalistic) compared to some random downloaded icon that may contain a lot of "garbage".

Like this:

Quoteuser >>
Could you make an SVG pin shape?

assistant >>
Certainly! Here's a simplified and accurate SVG of a classic map-pin shape you can use directly:

### SVG code
```xml
<svg xmlns="http://www.w3.org/2000/svg" width="64" height="64" viewBox="0 0 64 64">
  <!-- Pin shape -->
  <path fill="#FF4136" stroke="#CC342E" stroke-width="2" d="
    M32 2
    C19 2, 9 12, 9 25
    c0 17,23 37,23 37
    s23-20,23-37
    C55 12,45 2,32 2z"/>
   
  <!-- Inner circle -->
  <circle cx="32" cy="25" r="9" fill="#ffffff"/>
</svg>
```

### Explanation:
- The main **path** draws a clean, classic map pin geometry that comes to a defined point.
- The inner **circle** represents a pinpoint area inside the pin.

This SVG will display correctly and clearly, and you can easily modify its dimensions and colors.






--- other than that, for the A/B/C/D parameters of the elliptical arc you can always consult documentation :)
https://learn.microsoft.com/en-us/office/client-developer/visio/ellipticalarcto-row-geometry-section

Yacine

Try relCubBezTo. That let's you adjust the knot weight and angle manually.
Yacine

wapperdude

Quoteyou can ask Chat GPT to make an SVG pin shape

Aaaaaaargh!  Where's the fun in that!?!  Where's the learning?!?  I'm gonna lay me down and cry!  😫😨😭
Visio 2019 Pro

Nikolay

I was thinking of going as a helper worker for a ski lift :)
You get a free ski pass. IT jobs are in the past🥲


miless2111s

Awesome everyone, thank you for helping and offering a number of different ways to do things :)


Browser ID: smf (possibly_robot)
Templates: 4: index (default), Display (default), GenericControls (default), GenericControls (default).
Sub templates: 6: init, html_above, body_above, main, body_below, html_below.
Language files: 4: index+Modifications.english (default), Post.english (default), Editor.english (default), Drafts.english (default).
Style sheets: 4: index.css, attachments.css, jquery.sceditor.css, responsive.css.
Hooks called: 308 (show)
Files included: 32 - 1207KB. (show)
Memory used: 1186KB.
Tokens: post-login.
Cache hits: 13: 0.00136s for 26,597 bytes (show)
Cache misses: 2: (show)
Queries used: 17.

[Show Queries]