예제 #1
0
    /// <summary>
    /// Start is called before the first frame update.
    /// </summary>
    void Start()
    {
        converter  = GetComponent <SpatialMeshConversionHandler>();
        observer   = GetComponent <SpatialObserverHandler>();
        calculator = gameObject.GetComponent <RoomVolumeCalculationHandler>();

        // Register for the create surface planes complete event
        converter.CreateSurfacePlanesCompletedEvent += CreateSurfacePlanesCompletedEventHandler;
    }
예제 #2
0
    /// <summary>
    /// Start is called before the first frame update.
    /// </summary>
    void Start()
    {
        // Acess the set power outlets
        powerOutletPlacing = GameObject.Find("PowerOutletCollection").GetComponent <PowerOutletPlacementHandler>();
        // The power outlets are ordered by range so that first a lighting unit is placed at the power outlet with the largest range
        outlets = powerOutletPlacing.PowerOutletCollection.OrderByDescending(d => d.range).ToList();

        // Access and update the combined mesh
        GameObject spatialProcessing = GameObject.Find("SpatialProcessing_and_RoomVolumeCalculation");

        observer   = spatialProcessing.GetComponent <SpatialObserverHandler>();
        calculator = spatialProcessing.GetComponent <RoomVolumeCalculationHandler>();

        observer.SetMeshDisplayOption(SpatialAwarenessMeshDisplayOptions.None);
        combinedMesh = observer.CombinedMesh;
        combinedMesh.subMeshCount = outlets.Count;
        remainingTriangles        = combinedMesh.triangles.ToList();

        CreateRecommendation();
    }