Сообщение Re: как позиционировать Geomerty внутри GeometryGroup от 29.05.2019 11:08
Изменено 29.05.2019 11:10 anatolym
Re: как позиционировать Geomerty внутри GeometryGroup
Здравствуйте, okon, Вы писали:
O>Ожидалось что такой пример будет работать, но трансформация не применяется, все тайлы выводятся в одних координатах 0,0.
O>Как правильно в этом случае сделать трансформацию ?
O>
Думаю так, но не проверял. Если не заработает, то могу исправить на рабочую версию
O>Ожидалось что такой пример будет работать, но трансформация не применяется, все тайлы выводятся в одних координатах 0,0.
O>Как правильно в этом случае сделать трансформацию ?
O>
O>GeometryGroup GetTiledGeometry(Geometry geometry, int tileX, int tileY, double sizeX, double sizeY)
O>{
O> var group = new GeometryGroup();
O> for(int x = 0; x < tileX; x++)
O> for(int y = 0; y < tileY; y++)
O> {
O> var geometryTile = geometry.Clone();
O> //geometryTile.Transform.Transform(new Point(x * sizeX, y * sizeY ));
geometryTile.Transform = new TranslateTransform(x * sizeX, y * sizeY);
O> }
O> return group;
O>}
O>
Думаю так, но не проверял. Если не заработает, то могу исправить на рабочую версию

Re: как позиционировать Geomerty внутри GeometryGroup
Здравствуйте, okon, Вы писали:
O>Ожидалось что такой пример будет работать, но трансформация не применяется, все тайлы выводятся в одних координатах 0,0.
O>Как правильно в этом случае сделать трансформацию ?
O>
Думаю так, но не проверял. Если не заработает, то могу исправить на рабочую версию
Ибо в закомментированном фрагменте просто выполняется преобразование входных координат. Сама трансформация не меняется.
O>Ожидалось что такой пример будет работать, но трансформация не применяется, все тайлы выводятся в одних координатах 0,0.
O>Как правильно в этом случае сделать трансформацию ?
O>
O>GeometryGroup GetTiledGeometry(Geometry geometry, int tileX, int tileY, double sizeX, double sizeY)
O>{
O> var group = new GeometryGroup();
O> for(int x = 0; x < tileX; x++)
O> for(int y = 0; y < tileY; y++)
O> {
O> var geometryTile = geometry.Clone();
O> //geometryTile.Transform.Transform(new Point(x * sizeX, y * sizeY ));
geometryTile.Transform = new TranslateTransform(x * sizeX, y * sizeY);
O> }
O> return group;
O>}
O>
Думаю так, но не проверял. Если не заработает, то могу исправить на рабочую версию

Ибо в закомментированном фрагменте просто выполняется преобразование входных координат. Сама трансформация не меняется.