-- Created on: 1993-07-27 -- Created by: Jean Louis FRENKEL -- Copyright (c) 1993-1999 Matra Datavision -- Copyright (c) 1999-2012 OPEN CASCADE SAS -- -- The content of this file is subject to the Open CASCADE Technology Public -- License Version 6.5 (the "License"). You may not use the content of this file -- except in compliance with the License. Please obtain a copy of the License -- at http://www.opencascade.org and read it completely before using this file. -- -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France. -- -- The Original Code and all software distributed under the License is -- distributed on an "AS IS" basis, without warranty of any kind, and the -- Initial Developer hereby disclaims all such warranties, including without -- limitation, any warranties of merchantability, fitness for a particular -- purpose or non-infringement. Please see the License for the specific terms -- and conditions governing the rights and limitations under the License. class AveragePixelInterpolation from Image inherits PixelInterpolation from Image ---Purpose: The class AveragePixelInterpolation is used to compute a SubPixel -- value on non integer Image coordinate -- AveragePixelInterpolation redefined a new method to compute a -- SubPixel value . -- SubPixel value is the average of the three nearest Pixel in -- the Image . -- If V1, V2, V3, V4 is the value of the three nearest Image -- Pixel V = ( V1+V2+V3 ) / 3 is the Image SubPixel value -- on non integer coordinate (FX,FY) uses Image from Image, Pixel from Aspect, ColorPixel from Aspect, IndexPixel from Aspect, DColorImage from Image, DIndexedImage from Image is Create returns AveragePixelInterpolation from Image ; ---Level: Public ---Purpose: Create a AveragePixelInterpolation object. Interpolate( me ; aImage : Image from Image ; FX,FY : Real from Standard ; LowerX,LowerY,UpperX,UpperY : Integer from Standard ; RetPixel : in out Pixel from Aspect ) returns Boolean from Standard is redefined ; ---Level: Public ---Purpose: Redefined the method to compute SubPixel's value -- on non integer Image coordinate. -- LowerX,LowerY,UpperX,UpperY is the Image Min Max, it's use -- check if the SubPixel coordinate FX,FY is outside of image. -- Return True if Interpolation Succes. -- Return False if the SubPixel is out from Image. Interpolate( me ; aImage : DColorImage from Image ; FX,FY : Real from Standard ; LowerX,LowerY,UpperX,UpperY : Integer from Standard ; RetPixel : in out ColorPixel from Aspect ) returns Boolean from Standard is redefined; ---Level: Public ---Purpose: Compute SubPixel's value on non integer Image coordinate for -- DColorImage and ColorPixel. -- LowerX,LowerY,UpperX,UpperY is the Image Min Max, it's use -- check if the SubPixel coordinate FX,FY is outside of image. -- Return True if Interpolation Succes. -- Return False if the SubPixel is out from Image. Interpolate( me ; aImage : DIndexedImage from Image ; FX,FY : Real from Standard ; LowerX,LowerY,UpperX,UpperY : Integer from Standard ; RetPixel : in out IndexPixel from Aspect ) returns Boolean from Standard is redefined; ---Level: Public ---Purpose: Compute SubPixel's value on non integer Image coordinate for -- DIndexedImage and IndexPixel. -- LowerX,LowerY,UpperX,UpperY is the Image Min Max, it's use -- check if the SubPixel coordinate X,Y is outside of image. -- Return True if Interpolation Succes. -- Return False if the SubPixel is out from Image. end AveragePixelInterpolation from Image;