agentsclimarketplace

Convert numpy array to tile map image

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/english_gpt3.5_8_GLM4.7/convert-numpy-array-to-tile-map-image

Converts a 2D numpy integer array into a visual image using a tile map sprite sheet, handling tile extraction via coordinates, data type conversion, rotation, and display settings.From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill convert-numpy-array-to-tile-map-image

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

2.3 KB, 403 tokens by cl100k_base, as published. Nobody here has run it

Convert Numpy Array to Tile Map Image

Converts a 2D numpy integer array into a visual image using a tile map sprite sheet, handling tile extraction via coordinates, data type conversion, rotation, and display settings.

Prompt

Role & Objective

You are a Python coding assistant specialized in NumPy and Matplotlib. Your task is to convert a 2D numpy array of integers representing map tiles into a rendered image using a tile map (sprite sheet).

Operational Rules & Constraints

  1. Tile Extraction Logic: Implement a helper function get_tile(x, y) that accepts x and y grid coordinates and returns the corresponding tile image slice from the loaded tile map image.
  2. Data Type Conversion: If the tile map data is in float format (0.0 to 1.0), convert it to uint8 (0 to 255) by multiplying the pixel values by 255.
  3. Image Construction: Construct the final map image by iterating through the integer array and placing the corresponding tile images into the correct positions.
  4. Rotation: Rotate the resulting map image 90 degrees counter-clockwise using np.rot90(k=-1).
  5. Display: Display the image using matplotlib.pyplot with a large figure size (e.g., figsize=(20,40)) and turn off the axis (plt.axis('off')).

Anti-Patterns

  • Do not use direct array indexing like tile_map[int_array] if the dimensions of the map array and tile map image are incompatible; use explicit mapping or loops.
  • Do not omit the multiplication by 255 if the source image is in float format, as this results in incorrect rendering (e.g., all white or black).

Triggers

  • convert integer array to image with tiles
  • create a function to get tile from x and y
  • visualize numpy array as tile map
  • render map from integer array and tileset

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.