public void TestDct1Norm() { float[] res = new float[6]; float[] resDct1 = { 0.83879343f, -0.06875f, 0.30898255f, -0.34007706f, 0.6170123f, 0.1488374f }; var dct1 = new Dct1(8); dct1.DirectNorm(_test, res); Assert.That(res, Is.EqualTo(resDct1).Within(1e-5)); }
public void TestIdct1() { float[] res = new float[6]; float[] resDct1 = { 3.9f, -0.13297488f, 0.6176292f, -1.14818776f, 1.77017102f, 0.68116264f }; var dct1 = new Dct1(8); dct1.Inverse(_test, res); Assert.That(res, Is.EqualTo(resDct1).Within(1e-5)); }
public void TestIdct1() { float[] res = new float[8]; float[] resDct1 = { 1.95f, -0.06648744f, 0.3088146f, -0.57409388f, 0.88508551f, 0.34058132f, 0.10609989f, -0.45f }; var invdct = new Dct1(8, 8); invdct.Inverse(resDct1, res); Assert.That(res, Is.EqualTo(_test).Within(1e-5)); }
public void TestDct1() { float[] res = new float[6]; float[] resDct1 = { 1.95f, -0.06648744f, 0.3088146f, -0.57409388f, 0.88508551f, 0.34058132f }; var dct1 = new Dct1(8, 6); dct1.Direct(_test, res); Assert.That(res, Is.EqualTo(resDct1).Within(1e-5)); }
/// <summary> /// Tests the express where-clause specified in param 'clause' /// </summary> /// <param name="clause">The express clause to test</param> /// <returns>true if the clause is satisfied.</returns> public bool ValidateClause(IfcDimensionCurveClause clause) { var retVal = false; try { switch (clause) { case IfcDimensionCurveClause.WR51: retVal = Functions.SIZEOF(Functions.USEDIN(this, "IFC2X3.IFCDRAUGHTINGCALLOUT.CONTENTS")) >= 1; break; case IfcDimensionCurveClause.WR52: retVal = (Functions.SIZEOF(Functions.USEDIN(this, "IFC2X3." + "IFCTERMINATORSYMBOL.ANNOTATEDCURVE").Where(Dct1 => (Dct1.AsIfcDimensionCurveTerminator().Role == IfcDimensionExtentUsage.ORIGIN))) <= 1) && (Functions.SIZEOF(Functions.USEDIN(this, "IFC2X3." + "IFCTERMINATORSYMBOL.ANNOTATEDCURVE").Where(Dct2 => (Dct2.AsIfcDimensionCurveTerminator().Role == IfcDimensionExtentUsage.TARGET))) <= 1); break; case IfcDimensionCurveClause.WR53: retVal = Functions.SIZEOF(AnnotatedBySymbols.Where(Dct => !(Functions.TYPEOF(Dct).Contains("IFC2X3.IFCDIMENSIONCURVETERMINATOR")))) == 0; break; } } catch (Exception ex) { var log = Validation.ValidationLogging.CreateLogger <Xbim.Ifc2x3.PresentationDimensioningResource.IfcDimensionCurve>(); log?.LogError(string.Format("Exception thrown evaluating where-clause 'IfcDimensionCurve.{0}' for #{1}.", clause, EntityLabel), ex); } return(retVal); }