Beispiel #1
0
    void PotraceImage::BuildMaps(const IBWRecognizer& bwRecognizer, const RasterImage& rasterImg) {
        long numberOfPixels = rasterImg.GetWidth() * rasterImg.GetHeight();
        pixelMap = new PixelColor::Enum[numberOfPixels];

        long currentPixelIndex = 0;

        for (image_size_t y = 0; y < rasterImg.GetHeight(); ++y) {
            for (image_size_t x = 0; x < rasterImg.GetWidth(); ++x) {
                pixelMap[currentPixelIndex] = bwRecognizer.GetPotraceColor(rasterImg.GetColor(x, y));
                ++currentPixelIndex;
            }
        }

        isInvertedMap = new bool[numberOfPixels];
        for (long i = 0; i < numberOfPixels; ++i) {
            isInvertedMap[i] = false;
        }
    }