Exemple #1
0
    public async Task SimpleSurface_EmptySiteModel_NoDesign_AtOrigin_DefaultCellSize_FullExtent()
    {
      AddDesignProfilerGridRouting();

      var siteModel = DITAGFileAndSubGridRequestsWithIgniteFixture.NewEmptyModel();
      var req = new DesignFilterSubGridMaskRequest();

      // Ask for a design that does not exist
      var response = await req.ExecuteAsync(new DesignSubGridFilterMaskArgument(siteModel.ID, 0, 0, new DesignOffset(Guid.NewGuid(), -0.5), siteModel.CellSize));

      response.Should().NotBeNull();
      response.RequestResult.Should().Be(DesignProfilerRequestResult.DesignDoesNotExist);
      response.Bits.Should().BeNull();
    }
Exemple #2
0
    public async Task SimpleSurface_EmptySiteModel_AwayFromDesignCoverage_DefaultCellSize_FullExtent()
    {
      AddDesignProfilerGridRouting();

      var siteModel = DITAGFileAndSubGridRequestsWithIgniteFixture.NewEmptyModel();
      var designUid = DITAGFileAndSubGridRequestsWithIgniteFixture.ConstructSingleFlatTriangleDesignAboutOrigin(ref siteModel, 100.0f);
      var refeenceDesign = new DesignOffset(designUid, 0);
      var req = new DesignFilterSubGridMaskRequest();

      var response = await req.ExecuteAsync(new DesignSubGridFilterMaskArgument
      (siteModel.ID,
        SubGridTreeConsts.DefaultIndexOriginOffset + 10000, // Cell address of originX, about 3km from location of triangle at origin 
        SubGridTreeConsts.DefaultIndexOriginOffset + 10000, // Cell address of originY, about 3km from location of triangle at origin
        refeenceDesign, siteModel.CellSize));

      response.Should().NotBeNull();
      response.RequestResult.Should().Be(DesignProfilerRequestResult.NoElevationsInRequestedPatch);
      response.Bits.Should().BeNull();
    }
Exemple #3
0
    public async Task SimpleSurface_EmptySiteModel_AtOrigin_DefaultCellSize_FullExtent()
    {
      AddDesignProfilerGridRouting();

      var siteModel = DITAGFileAndSubGridRequestsWithIgniteFixture.NewEmptyModel();
      var designUid = DITAGFileAndSubGridRequestsWithIgniteFixture.ConstructSingleFlatTriangleDesignAboutOrigin(ref siteModel, 100.0f);
      var referenceDesign = new DesignOffset(designUid, 0);
      var req = new DesignFilterSubGridMaskRequest();

      var response = await req.ExecuteAsync(new DesignSubGridFilterMaskArgument
        (siteModel.ID,
         SubGridTreeConsts.DefaultIndexOriginOffset, // Cell address of originX, 
         SubGridTreeConsts.DefaultIndexOriginOffset, // Cell address of originY
         referenceDesign, siteModel.CellSize));

      response.Should().NotBeNull();
      response.RequestResult.Should().Be(DesignProfilerRequestResult.OK);
      response.Bits.CountBits().Should().Be(903);
    }
Exemple #4
0
        /// <summary>
        /// Calculates a filter mask for a designated sub grid on this design
        /// </summary>
        public async Task <(SubGridTreeBitmapSubGridBits filterMask, DesignProfilerRequestResult errorCode)> GetFilterMaskViaDesignElevationService(
            Guid siteModelId,
            SubGridCellAddress originCellAddress,
            double cellSize)
        {
            // Query the DesignProfiler service to get the requested filter mask
            var filterMaskRequest = new DesignFilterSubGridMaskRequest();

            var maskResponse = await filterMaskRequest.ExecuteAsync(new DesignSubGridFilterMaskArgument
            {
                CellSize        = cellSize,
                ReferenceDesign = new DesignOffset(DesignDescriptor.DesignID, 0),
                OriginX         = originCellAddress.X,
                OriginY         = originCellAddress.Y,
                ProjectID       = siteModelId
            });

            return(maskResponse?.Bits, maskResponse?.RequestResult ?? DesignProfilerRequestResult.UnknownError);
        }
Exemple #5
0
 public void Creation()
 {
   var req = new DesignFilterSubGridMaskRequest();
   req.Should().NotBeNull();
 }