int
main(int, char *[])
{
auto image = Image::New();
constexpr Image::SizeType size = { { 10, 10 } };
Image::RegionType region;
region.SetSize(size);
image->SetRegions(region);
image->Allocate();
Iterator it(image, region);
short pixelValue = 0;
for (it.GoToBegin(); !it.IsAtEnd(); ++it, ++pixelValue)
{
it.Set(pixelValue);
}
auto imageSO = ImageSpatialObject::New();
imageSO->SetImage(image);
imageSO->Update();
if (imageSO->IsInsideInWorldSpace(insidePoint))
{
std::cout << insidePoint << " is inside the image." << std::endl;
}
double returnedValue;
imageSO->ValueAtInWorldSpace(insidePoint, returnedValue);
std::cout << "ValueAt(" << insidePoint << ") = " << returnedValue
<< std::endl;
ImageSpatialObject::DerivativeVectorType returnedDerivative;
imageSO->DerivativeAtInWorldSpace(insidePoint, 1, returnedDerivative);
std::cout << "First derivative at " << insidePoint;
std::cout << " = " << returnedDerivative << std::endl;
return EXIT_SUCCESS;
}
A multi-dimensional iterator templated over image type that walks a region of pixels.
Implementation of an image as spatial object.
Templated n-dimensional image class.
A templated class holding a geometric point in n-Dimensional space.
constexpr TContainer MakeFilled(typename TContainer::const_reference value)