Index: src/Deltares.DSoilModel.Forms/DrawingCPT.cs =================================================================== diff -u -r6 -r383 --- src/Deltares.DSoilModel.Forms/DrawingCPT.cs (.../DrawingCPT.cs) (revision 6) +++ src/Deltares.DSoilModel.Forms/DrawingCPT.cs (.../DrawingCPT.cs) (revision 383) @@ -229,35 +229,38 @@ qcPoints.Clear(); frictionPoints.Clear(); waterPressurePoints.Clear(); - double qcVoid = conePenetrationTestData.qcVoid; - double frictionVoid = conePenetrationTestData.FrictionVoid; - double waterPressureVoid = conePenetrationTestData.WaterPressureVoid; + if (conePenetrationTestData != null) + { + double qcVoid = conePenetrationTestData.qcVoid; + double frictionVoid = conePenetrationTestData.FrictionVoid; + double waterPressureVoid = conePenetrationTestData.WaterPressureVoid; - double dataQcMax = 0, dataFrictionMax = 0, dataWaterPressureMax = 0; + double dataQcMax = 0, dataFrictionMax = 0, dataWaterPressureMax = 0; - // auto scale the axes ? - foreach (var row in conePenetrationTestData.CPTDatarows) - { - // note: sometimes the void values are inconsistent ! - if (row.qc != qcVoid && row.qc != frictionVoid) + // auto scale the axes ? + foreach (var row in conePenetrationTestData.CPTDatarows) { - qcPoints.Add(new Point3D(row.qc, 0d, row.Level)); - dataQcMax = Math.Max(dataQcMax, row.qc); + // note: sometimes the void values are inconsistent ! + if (row.qc != qcVoid && row.qc != frictionVoid) + { + qcPoints.Add(new Point3D(row.qc, 0d, row.Level)); + dataQcMax = Math.Max(dataQcMax, row.qc); + } + if (row.friction != frictionVoid && row.friction != qcVoid && conePenetrationTestData.ConeType != ConeType.Ball) + { + frictionPoints.Add(new Point3D(row.friction, 0d, row.Level)); + dataFrictionMax = Math.Max(dataFrictionMax, row.friction); + } + if (row.WaterPressureSpecified && row.WaterPressure != waterPressureVoid && conePenetrationTestData.ConeType != ConeType.Ball) + { + waterPressurePoints.Add(new Point3D(row.WaterPressure, 0d, row.Level)); + dataWaterPressureMax = Math.Max(dataWaterPressureMax, row.WaterPressure); + } } - if (row.friction != frictionVoid && row.friction != qcVoid && conePenetrationTestData.ConeType != ConeType.Ball) - { - frictionPoints.Add(new Point3D(row.friction, 0d, row.Level)); - dataFrictionMax = Math.Max(dataFrictionMax, row.friction); - } - if (row.WaterPressureSpecified && row.WaterPressure != waterPressureVoid && conePenetrationTestData.ConeType != ConeType.Ball) - { - waterPressurePoints.Add(new Point3D(row.WaterPressure, 0d, row.Level)); - dataWaterPressureMax = Math.Max(dataWaterPressureMax, row.WaterPressure); - } + qcMax = (qcMax == 0) ? dataQcMax : qcMax; + frictionMax = (frictionMax == 0) ? dataFrictionMax : frictionMax; + waterPressureMax = (waterPressureMax == 0) ? dataWaterPressureMax : waterPressureMax; } - qcMax = (qcMax == 0) ? dataQcMax : qcMax; - frictionMax = (frictionMax == 0) ? dataFrictionMax : frictionMax; - waterPressureMax = (waterPressureMax == 0) ? dataWaterPressureMax : waterPressureMax; } ///