50 int main(
int argc,
char * argv[])
61 typedef unsigned char PixelType;
75 ImageType> VectorDataToMapFilterType;
76 VectorDataToMapFilterType::Pointer vectorDataRendering
77 = VectorDataToMapFilterType::New();
91 VectorDataFileReaderType::Pointer reader = VectorDataFileReaderType::New();
92 reader->SetFileName(argv[1]);
95 VectorDataType> ProjectionFilterType;
96 ProjectionFilterType::Pointer projection = ProjectionFilterType::New();
97 projection->SetInput(reader->GetOutput());
100 std::string projectionRefWkt =
"PROJCS[\"WGS 84 / UTM zone 30N\", GEOGCS[\"WGS 84\", DATUM[\"WGS_1984\", SPHEROID[\"WGS 84\", 6378137, 298.257223563, AUTHORITY[\"EPSG\",\"7030\"]], AUTHORITY[\"EPSG\",\"6326\"]], PRIMEM[\"Greenwich\", 0, AUTHORITY[\"EPSG\",\"8901\"]], UNIT[\"degree\", 0.01745329251994328, AUTHORITY[\"EPSG\",\"9122\"]], AUTHORITY[\"EPSG\",\"4326\"]], UNIT[\"metre\", 1, AUTHORITY[\"EPSG\",\"9001\"]], PROJECTION[\"Transverse_Mercator\"], PARAMETER[\"latitude_of_origin\", 0], PARAMETER[\"central_meridian\", -3], PARAMETER[\"scale_factor\", 0.9996], PARAMETER[\"false_easting\", 500000], PARAMETER[\"false_northing\", 0], AUTHORITY[\"EPSG\",\"32630\"], AXIS[\"Easting\", EAST], AXIS[\"Northing\", NORTH]]";
111 projection->SetOutputProjectionRef(projectionRefWkt);
126 ImageType::SizeType size;
130 ImageType::PointType origin;
134 ImageType::SpacingType spacing;
139 RegionType::SizeType sizeInUnit;
140 sizeInUnit[0] = size[0] * spacing[0];
141 sizeInUnit[1] = size[1] * spacing[1];
143 region.SetOrigin(origin);
144 region.SetRegionProjection(projectionRefWkt);
158 ExtractROIType::Pointer extractROI = ExtractROIType::New();
159 extractROI->SetRegion(region);
160 extractROI->SetInput(projection->GetOutput());
172 vectorDataRendering->SetInput(extractROI->GetOutput());
173 vectorDataRendering->SetSize(size);
174 vectorDataRendering->SetOrigin(origin);
175 vectorDataRendering->SetSpacing(spacing);
187 vectorDataRendering->SetRenderingStyleType(VectorDataToMapFilterType::Binary);
204 RGBAImageType> ChangeLabelImageFilterType;
206 ChangeLabelImageFilterType::Pointer
207 changeLabelFilter = ChangeLabelImageFilterType::New();
209 RGBAPixelType green, blue;
215 changeLabelFilter->SetChange(0, blue);
216 changeLabelFilter->SetChange(255, green);
217 changeLabelFilter->SetInput(vectorDataRendering->GetOutput());
231 WriterType::Pointer writer = WriterType::New();
232 writer->SetInput(changeLabelFilter->GetOutput());
233 writer->SetFileName(argv[2]);