Libraries.Game.Graphics.Fonts.CoordinateContainer Documentation

The CoordinateContainer class is used to maintain an array of x-intercepts for a character's glyph. This is used in the rasterization process, where every y value has a list of corresponding x-intercepts which indicate the glyph's outline.

Example Code

use Libraries.Game.Graphics.Fonts.all
    use Libraries.Game.Game
    use Libraries.Containers.Array

    class Main is Game
        action Main
            StartGame()
        end

        action CreateGame
            CoordinateContainer coordinates
            Array<XCoordinateList> xCoordinates = coordinates:GetList()
        end
    end

Inherits from: Libraries.Language.Object

Summary

Actions Summary Table

ActionsDescription
Add(integer position, Libraries.Game.Graphics.Fonts.XCoordinateList item)This action adds an XCoordinateList to the XCoordinateList array at the specified position.
Add(Libraries.Game.Graphics.Fonts.XCoordinateList item)This action adds an XCoordinateList to the end of the XCoordinateList array.
AddToEnd(Libraries.Game.Graphics.Fonts.XCoordinateList item)This action adds an XCoordinateList to the last position of the XCoordinateList array.
AddToFront(Libraries.Game.Graphics.Fonts.XCoordinateList item)This action adds an XCoordinateList to the first position of the XCoordinateList array.
Compare(Libraries.Language.Object object)This action compares two object hash codes and returns an integer.
Equals(Libraries.Language.Object object)This action determines if two objects are equal based on their hash code values.
Get(integer location)This action returns the item in the XCoordinateList at the specified location.
GetHashCode()This action gets the hash code for an object.
GetList()This action returns the array of x-intercepts.
GetSize()This action returns the size of the XCoordinate list.
RemoveDuplicates()This action removes duplicate entries from the XCoordinateList array.
SetList(Libraries.Containers.Array<Libraries.Game.Graphics.Fonts.XCoordinateList> list)This action sets the array of x-intercepts.
ToText()This action takes the contents of the XCoordinateList array and turns it into a text object.

Actions Documentation

Add(integer position, Libraries.Game.Graphics.Fonts.XCoordinateList item)

This action adds an XCoordinateList to the XCoordinateList array at the specified position.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        
        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                XCoordinateList xCoordinates
                coordinates:Add(0, xCoordinates)
            end
        end

Parameters

Add(Libraries.Game.Graphics.Fonts.XCoordinateList item)

This action adds an XCoordinateList to the end of the XCoordinateList array.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        
        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                XCoordinateList xCoordinates
                coordinates:Add(xCoordinates)
            end
        end

Parameters

AddToEnd(Libraries.Game.Graphics.Fonts.XCoordinateList item)

This action adds an XCoordinateList to the last position of the XCoordinateList array.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        
        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                XCoordinateList xCoordinates
                coordinates:AddToEnd(xCoordinates)
            end
        end

Parameters

AddToFront(Libraries.Game.Graphics.Fonts.XCoordinateList item)

This action adds an XCoordinateList to the first position of the XCoordinateList array.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        
        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                XCoordinateList xCoordinates
                coordinates:AddToFront(xCoordinates)
            end
        end

Parameters

Compare(Libraries.Language.Object object)

This action compares two object hash codes and returns an integer. The result is larger if this hash code is larger than the object passed as a parameter, smaller, or equal. In this case, -1 means smaller, 0 means equal, and 1 means larger. This action was changed in Quorum 7 to return an integer, instead of a CompareResult object, because the previous implementation was causing efficiency issues.

Example Code

Object o
        Object t
        integer result = o:Compare(t) //1 (larger), 0 (equal), or -1 (smaller)

Parameters

Return

integer: The Compare result, Smaller, Equal, or Larger.

Equals(Libraries.Language.Object object)

This action determines if two objects are equal based on their hash code values.

Example Code

use Libraries.Language.Object
        use Libraries.Language.Types.Text
        Object o
        Text t
        boolean result = o:Equals(t)

Parameters

Return

boolean: True if the hash codes are equal and false if they are not equal.

Get(integer location)

This action returns the item in the XCoordinateList at the specified location.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        
        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                XCoordinateList list = coordinates:Get(0)
            end
        end

Parameters

Return

Libraries.Game.Graphics.Fonts.XCoordinateList: Returns the XCoordinateList at the specified location.

GetHashCode()

This action gets the hash code for an object.

Example Code

Object o
        integer hash = o:GetHashCode()

Return

integer: The integer hash code of the object.

GetList()

This action returns the array of x-intercepts.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        use Libraries.Containers.Array

        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                Array<XCoordinateList> xCoordinates = coordinates:GetList()
            end
        end

Return

Libraries.Containers.Array: Returns the array of x-intercepts.

GetSize()

This action returns the size of the XCoordinate list.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        
        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                output coordinates:GetSize()
            end
        end

Return

integer: Returns the size of the XCoordinate list.

RemoveDuplicates()

This action removes duplicate entries from the XCoordinateList array.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game

        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                coordinates:RemoveDuplicates()
            end
        end

SetList(Libraries.Containers.Array<Libraries.Game.Graphics.Fonts.XCoordinateList> list)

This action sets the array of x-intercepts.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game
        use Libraries.Containers.Array

        class Main is Game
            action Main
                StartGame()
            end
            
            action CreateGame
                CoordinateContainer coordinates
                XCoordinateList coordinate
                Array<XCoordinateList> list
                list:Add(coordinate)
                coordinates:SetList(list)
            end 
        end

Parameters

ToText()

This action takes the contents of the XCoordinateList array and turns it into a text object.

Example Code

use Libraries.Game.Graphics.Fonts.all
        use Libraries.Game.Game

        class Main is Game
            action Main
                StartGame()
            end

            action CreateGame
                CoordinateContainer coordinates
                output coordinates:ToText()
            end
        end

Return

text: Returns the text representation of the contents of the array.