Exemple #1
0
        public SemanticObject GetDeepCopy()
        {
            SemanticObject newSO = new SemanticObject(Scores, Corners);

            newSO.SetId(Id);
            return(newSO);
        }
        public SemanticObject AddNewDetectedObject(SemanticObject obj)
        {
            if (obj.Id.Equals(""))
            {
                string id = GetNewTimeID() + "_" + obj.ObjectClass;
                obj.SetId(id);
            }
            var newDetectedObject = new RDFOntologyFact(GetClassResource(obj.Id));

            ontology.Data.AddFact(newDetectedObject);
            ontology.Data.AddClassTypeRelation(newDetectedObject, new RDFOntologyClass(GetClassResource(obj.ObjectClass)));
            ontology.Data.AddAssertionRelation(newDetectedObject, new RDFOntologyDatatypeProperty(GetResource("position")), new RDFOntologyLiteral(new RDFPlainLiteral(obj.Position.ToString())));
            ontology.Data.AddAssertionRelation(newDetectedObject, new RDFOntologyDatatypeProperty(GetResource("rotation")), new RDFOntologyLiteral(new RDFPlainLiteral(obj.Rotation.eulerAngles.ToString())));
            ontology.Data.AddAssertionRelation(newDetectedObject, new RDFOntologyDatatypeProperty(GetResource("score")), new RDFOntologyLiteral(new RDFPlainLiteral(obj.Score.ToString())));
            ontology.Data.AddAssertionRelation(newDetectedObject, new RDFOntologyDatatypeProperty(GetResource("nDetections")), new RDFOntologyLiteral(new RDFPlainLiteral(obj.NDetections.ToString())));
            ontology.Data.AddAssertionRelation(newDetectedObject, new RDFOntologyDatatypeProperty(GetResource("size")), new RDFOntologyLiteral(new RDFPlainLiteral(obj.Size.ToString())));
            ontology.Data.AddAssertionRelation(newDetectedObject, new RDFOntologyObjectProperty(GetResource("recordedIn")), raidFact);

            return(obj);
        }