4D v16.3

Picture Operators

Home

 
4D v16.3
Picture Operators

Picture Operators  


 

 

An expression that uses a picture operator returns a picture. The following table shows the picture operators.

OperationSyntaxAction
Horizontal concatenationPict1 + Pict2Add Pict2 to the right of Pict1
Vertical concatenationPict1 / Pict2Add Pict2 to the bottom of Pict1
Exclusive superimposition(*)Pict1 & Pict2Superimposes Pict2 on top of Pict1 (Pict2 in foreground)
Inclusive superimposition(*)Pict1 | Pict2Superimposes Pict2 on Pict1 and returns resulting mask if both pictures are the same size
Horizontal movePicture + NumberMove Picture horizontally Number pixels
Vertical movePicture / NumberMove Picture vertically Number pixels
ResizingPicture * NumberResize Picture by Number ratio
Horizontal scalingPicture *+ NumberResize Picture horizontally by Number ratio
Vertical scalingPicture */ NumberResize Picture vertically by Number ratio

(*) The functioning of the exclusive superimposition (&) and inclusive superimposition (|) operators is modified starting with 4Dv14 following the update of the display management libraries used by the program.
Pict3 := Pict1 & Pict2 produces the same result as:

 COMBINE PICTURES(pict3;pict1;Superimposition;pict2)

Pict3 := Pict1 | Pict2 produces the same result as:
 $equal:=Equal pictures(Pict1;Pict2;Pict3)

Note that in order to use the | operator, Pict1 and Pict2 must have exactly the same dimension. If both pictures are a different size, the operation Pict1 | Pict2 produces a blank picture.

Note: The COMBINE PICTURES command can be used to superimpose pictures while keeping the characteristics of each source picture in the resulting picture.

The picture operators return vectorial pictures if the two source pictures are vectorial. Remember, however, that pictures printed by the display format On Background are printed bitmapped.

Example  

In the following examples, all of the pictures are shown using the display format On Background.

Here is the picture circle:

Here is the picture rectangle:

In the following examples, each expression is followed by its graphical representation.

  • Horizontal concatenation
 circle+rectangle ` Place the rectangle to the right of the circle

 rectangle+circle ` Place the circle to the right of the rectangle

  • Vertical concatenation
 circle/rectangle ` Place the rectangle under the circle

 rectangle/circle ` Place the circle under the rectangle

  • Exclusive superimposition
 Pict3:=Pict1 & Pict2 // Superimposes Pict2 on top of  Pict1

  • Inclusive superimposition
 Pict3:=Pict1|Pict2 // Recovers resulting mask from superimposing two pictures of the same size

  • Horizontal move
 rectangle+50 ` Move the rectangle 50 pixels to the right

 rectangle-50 ` Move the rectangle 50 pixels to the left

  • Vertical move
 rectangle/50 ` Move the rectangle down by 50 pixels

 rectangle/-20 ` Move the rectangle up by 20 pixels

  • Resize
 rectangle*1.5 ` The rectangle becomes 50% bigger

 rectangle*0.5 ` The rectangle becomes 50% smaller

  • Horizontal scaling
 circle*+3 ` The circle becomes 3 times wider

 circle*+0.25 ` The circle's width becomes a quarter of what it was

  • Vertical scaling
 circle*/2 ` The circle becomes twice as tall

 circle*/0.25 ` The circle's height becomes a quarter of what it was



See also 

Bitwise Operators
COMBINE PICTURES
Comparison Operators
Date Operators
Logical Operators
Numeric Operators
Operators
Pictures
String Operators
Time Operators
TRANSFORM PICTURE

 
PROPERTIES 

Product: 4D
Theme: Operators

 
HISTORY 

 
ARTICLE USAGE

4D Language Reference ( 4D v16)
4D Language Reference ( 4D v16.1)
4D Language Reference ( 4D v16.2)
4D Language Reference ( 4D v16.3)