All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.eclipse.elk.alg.common.compaction.Polyomino.melk Maven / Gradle / Ivy

Go to download

PlantUML is a component that allows to quickly write : * sequence diagram, * use case diagram, * class diagram, * activity diagram, * component diagram, * state diagram * object diagram

There is a newer version: 8059
Show newest version
/*******************************************************************************
 * Copyright (c) 2017 Kiel University and others.
 * 
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License 2.0 which is available at
 * http://www.eclipse.org/legal/epl-2.0.
 *
 * SPDX-License-Identifier: EPL-2.0
 *******************************************************************************/
package org.eclipse.elk.alg.common.compaction

bundle {
    label "Options for Polyomino Compaction"
    metadataClass options.PolyominoOptions
    idPrefix org.eclipse.elk
}

group polyomino {

    option traversalStrategy: TraversalStrategy {
        label "Polyomino Traversal Strategy"
        description
            "Traversal strategy for trying different candidate positions for polyominoes."
        default = TraversalStrategy.QUADRANTS_LINE_BY_LINE
        targets parents
    }

    option lowLevelSort: LowLevelSortingCriterion {
        label "Polyomino Secondary Sorting Criterion"
        description
            "Possible secondary sorting criteria for the processing order of polyominoes. 
             They are used when polyominoes are equal according to the primary 
             sorting criterion HighLevelSortingCriterion."
        default = LowLevelSortingCriterion.BY_SIZE_AND_SHAPE
        targets parents
    }

    option highLevelSort: HighLevelSortingCriterion {
        label "Polyomino Primary Sorting Criterion"
        description
            "Possible primary sorting criteria for the processing order of polyominoes."
        default = HighLevelSortingCriterion.NUM_OF_EXTERNAL_SIDES_THAN_NUM_OF_EXTENSIONS_LAST
        targets parents
    }

    option fill: boolean {
        label "Fill Polyominoes"
        description
            "Use the Profile Fill algorithm to fill polyominoes to prevent small polyominoes
             from being placed inside of big polyominoes with large holes. Might increase packing area."
        default = true
        targets parents
    }

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy