Where can I find the ArchiMate sprites?

0 votes
asked Mar 31, 2022 in Question / help by anonymous

Hello,

I'm making an ArchiMate heat map and trying to get the stereotype sprites to appear with a clear background so that they match the heat colour.

Here's a basic example showing the differing colours.

Whilst I can change the background colour of the archimate shape, is there a way I can access the source sprites? What I mean is the original monochrome sprites, not the #STRATEGY-coloured icon that is displayed when using the <<strategy-resource>> stereotype, for example. Or perhaps I can specify a background colour instead of the default colours?

Many thanks for any advice.

commented Apr 1, 2022 by Martin (8,360 points)
edited Apr 1, 2022 by Martin

The bad news is that the sprites are stored as colour, not monochrome - as can be seen here or here.

The good news is that you can create custom sprites.  However I'm not sure whether they can be used as a stereotype icon.  So I've faked the positioning in this example, I left in the original icon so you can compare (click image to see it in the online server):

I created the icon by copying the github icon png into the clipboard and using the Plantuml UI's file->Open Sprite Window.  Unfortunately the results weren't great because I think it is colouring the transparent background as black - so the sprites offered all had a thick black border.  So I chose the second sprite format because it looked easiest to edit, and manually changed some Fs into 0s to get rid of the black border.

commented Apr 1, 2022 by plantuml (295,000 points)

For the record, Archimate icons come from https://github.com/archimatetool/archi

On our side, icons are stored here https://github.com/plantuml/plantuml/tree/master/src/sprites/archimate

Even if sprites are stored as colour (not monochrome) we have some algorithm which can turns them to monochrome
(even if this example is not working since the icon keeps its colors :-) we're going to fix that)


So do you want that PlantUML automatically changes the background color like in Martin's example?


> Or perhaps I can specify a background colour instead of the default colours?
>

That's another option. The most difficult is to find a nice syntax. Any idea about it?

commented Apr 1, 2022 by anonymous

Hi. Many thanks for your original reply, Martin, and yours, plantuml.

I had a closer look at the current archimate sprites and there are clear background versions of many of those with coloured backgrounds, for example "collaboration" which also appears as "application-collaboration", "business-collaboration" and "technology-collaboration".

There are, I think, nine archimate sprites that don't have a corresponding clear version so perhaps these could be added:

  1. implementation-workpackage (monochrome version = "workpackage"?)
  2. motivation-outcome (monochrome version = "outcome"?)
  3. motivation-stakeholder (monochrome version = "stakeholder"?)
  4. physical-equipment (monochrome version = "equipment"?)
  5. physical-material (monochrome version = "material"?)
  6. strategy-capability (monochrome version = "capability"?)
  7. strategy-course-of-action (monochrome version = "course-of-action"?)
  8. strategy-resource (monochrome version = "resource"?)
  9. strategy-value-stream (monochrome version = "value-stream"?)
Would another approach be to alias these clear-background sprites as required – eg "strategy-resource" => "resource" – and ditch the coloured-background versions? That way the existing syntax would be the same but changes to the background colour wouldn't be an issue.
Hope that makes sense!
Many thanks for looking into this admittedly edge case :-)
commented Apr 1, 2022 by anonymous

Here's the code for the clear-background sprites:

sprite $capability [16x16/4] {
0000000000_mmmm_
0000033333_3333_
00000_0000_0000_
FCCCC_CCCC_CCCC_
_0000_0000_0000_
mmmmmmmmmmmmmmmm
}

sprite $course-of-action [16x16/4] {
000003CCmmmCC300
0000Fm0FmpmF0mF0
0000mF0mCCCm0Fm0
0p___0mmCCCmm000
_ym0m00000000000
0m00000000000000
}

sprite $equipment [16x16/4] {
003333_mm_333300
00_0003333000_00
_mm00_m00m_00mm_
mm_00myCCym00_mm
00yCCCF00FCCCy00
000000mmmm000000
}

sprite $material [16x16/4] {
0000FCCCCCCF0000
00Fy03C00C30yF00
Fm0Cm000000mC0mF
0mF3033333303Fm0
000mF333333Fm000
0000000000000000
}

sprite $outcome [16x16/4] {
000033CCC33003yC
03Cm03CCC33yy300
Fm0Fm03CFmmF0mF0
mF0mC30m03Cm0Fm0
00mC33mmm33Cm000
000000mmm0000000
}

sprite $resource [16x16/4] {
0333333333333000
_003030300000_30
_00_0_0_00000_0_
_00y0y0y00000_Cm
mCCCCCCCCCCCCm00
0000000000000000
}

sprite $stakeholder [16x16/4] {
003333_mm_333300
0F_mmmppppymm_F0
_pm00_m0yp_00mp_
mm_CCyyCCyyCC_mm
00yCCCF00FCCCy00
000000mmmm000000
}

sprite $value-stream [16x16/4] {
0000000000000000
mypmmmmmmmmC3000
000mC30000000mC3
003Cm00000003Cm0
CyCCCCCCCCCm0000
0000000000000000
}

sprite $workpackage [16x16/4] {
0333333333333330
_m000000000000m_
_00000000000000_
_00000000000000_
myCCCCCCCCCCCCym
0000000000000000
}

Your answer

Your name to display (optional):
Privacy: Your email address will only be used for sending these notifications.
Anti-spam verification:

[Antispam2 Feature: please please wait 1 or 2 minutes (this message will disappear) before pressing the button otherwise it will fail](--------)
To avoid this verification in future, please log in or register.
...