Simple way to remove duplicated tiles to improve performance
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Refactorización
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- javascript
- Área
- performance
Línea de trabajo
No se especifican archivos ni pruebas. Empieza por localizar la lógica de generación y rotación de tiles; después, compara el número actual de tiles y el tiempo de generación con el paso de deduplicación propuesto; se considera terminado cuando se eliminan los tiles rotados duplicados sin cambiar el conjunto resultante de tiles únicos.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Hi 😃 We can write a function to get only the unique tiles in an array :
function removeDuplicatedTiles(tiles) {
const uniqueTilesMap = {};
for (const tile of tiles) {
const key = tile.edges.join(","); // ex: "ABB,BCB,BBA,AAA"
uniqueTilesMap[key] = tile;
}
return Object.values(uniqueTilesMap);
}
So we can apply rotations to all the tiles and then keep only the unique ones :
const initialTileCount = tiles.length;
for (let i = 0; i < initialTileCount; i++) {
for (let j = 1; j < 4; j++) {
tiles.push(tiles[i].rotate(j));
}
}
tiles = removeDuplicatedTiles(tiles);
In our case, we have 13 images. By rotating all of them, we get 52. And by removing the duplicates, we get down to 33.
On my PC, the generation time goes from 23s to 14s 🚀
- Lenguaje dominante
- JavaScript
- Estrellas
- 219
- Forks
- 64
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de CodingTrain/Wave-Function-Collapse
-
Optimize grid updates Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
CodingTrain/Wave-Function-Collapse#41 · 2 reacciones ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
CodingTrain/Wave-Function-Collapse#38 · 2 comentarios ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
CodingTrain/Wave-Function-Collapse#37 · 1 comentario ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 42/100
CodingTrain/Wave-Function-Collapse#35 · 1 comentario ·
-
Do NOT make a new grid Abierto
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
Todos los issues de CodingTrain/Wave-Function-Collapse
Issues similares
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Improve Title Support Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
georgestephanis/p2026#40 ·
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Margaret-Petersen/food-delivery-app-clone-react-native#1981 ·