Sha256: 5a4192ce956998cb0dd22c2549029f441949a4d408afc5029179c571d0f7097c

Contents?: true

Size: 896 Bytes

Versions: 6

Compression:

Stored size: 896 Bytes

Contents

package org.sunflow.image;

public final class XYZColor {

    private float X, Y, Z;

    public XYZColor() {
    }

    public XYZColor(float X, float Y, float Z) {
        this.X = X;
        this.Y = Y;
        this.Z = Z;
    }

    public final float getX() {
        return X;
    }

    public final float getY() {
        return Y;
    }

    public final float getZ() {
        return Z;
    }

    public final XYZColor mul(float s) {
        X *= s;
        Y *= s;
        Z *= s;
        return this;
    }

    public final void normalize() {
        float XYZ = X + Y + Z;
        if (XYZ < 1e-6f) {
            return;
        }
        float s = 1 / XYZ;
        X *= s;
        Y *= s;
        Z *= s;
    }

    @Override
    public final String toString() {
        return String.format("(%.3f, %.3f, %.3f)", X, Y, Z);
    }
}

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
joonsrenderer-1.3.1-java src/main/java/org/sunflow/image/XYZColor.java
joonsrenderer-1.2.0-java src/main/java/org/sunflow/image/XYZColor.java
joonsrenderer-1.1.3-java src/main/java/org/sunflow/image/XYZColor.java
joonsrenderer-1.1.2-java src/main/java/org/sunflow/image/XYZColor.java
joonsrenderer-1.1.1-java src/main/java/org/sunflow/image/XYZColor.java
joonsrenderer-1.1-java src/main/java/org/sunflow/image/XYZColor.java