BOOL ON_BrepEdge::Read( ON_BinaryArchive& file ) { int bReversed = false; ON_Interval proxy_domain; BOOL rc = file.ReadInt( &m_edge_index ); if (rc) rc = file.ReadInt( &m_c3i ); if (rc) rc = file.ReadInt( &bReversed ); if (rc) rc = file.ReadInterval( proxy_domain ); if (rc) rc = file.ReadInt( 2, m_vi ); if (rc) rc = file.ReadArray( m_ti ); if (rc) rc = file.ReadDouble( &m_tolerance ); ON_Interval domain = proxy_domain; if ( file.Archive3dmVersion() >= 3 && file.ArchiveOpenNURBSVersion() >= 200206180 ) { if (rc) { rc = file.ReadInterval(domain); if ( !rc) domain = proxy_domain; } } SetProxyCurve( NULL, proxy_domain ); if ( bReversed ) ON_CurveProxy::Reverse(); SetDomain(domain); return rc; }
void Assignment::Prepare(void) { CollectReferences( ); //collect the referenced entities vector<Control*>::iterator it=GetSurroundingControls( )->begin(); Condition* domain=new Condition(new Inequation(true)); while(it != GetSurroundingControls( )->end()) { Control* st; if((*it)->IsLoop()) AddCounter( (*it)->GetLoopCounter()); Condition* __st_domain=(*it)->GetDomainConstraints(GetRank()); domain= new Condition(domain,FADA_AND, __st_domain); ++it; } Condition* __no_not= domain->EliminateNotOperations(); Condition* __dnform= __no_not->DNForm(); vector<Condition*>* new_domain=new vector<Condition*>(); *new_domain=__dnform->GetTerms(); SetDomain(new_domain); }
BOOL Gadgets2NetworkPrefs(struct NetPEditor_DATA *data) { STRPTR str = NULL; IPTR lng = 0; GET(data->netped_deviceString, MUIA_String_Contents, &str); SetDevice(str); GET(data->netped_IPString, MUIA_String_Contents, &str); SetIP(str); GET(data->netped_maskString, MUIA_String_Contents, &str); SetMask(str); GET(data->netped_gateString, MUIA_String_Contents, &str); SetGate(str); GET(data->netped_DNSString[0], MUIA_String_Contents, &str); SetDNS(0, str); GET(data->netped_DNSString[1], MUIA_String_Contents, &str); SetDNS(1, str); GET(data->netped_hostString, MUIA_String_Contents, &str); SetHost(str); GET(data->netped_domainString, MUIA_String_Contents, &str); SetDomain(str); GET(data->netped_DHCPState, MUIA_Cycle_Active, &lng); SetDHCP(lng); GET(data->netped_Autostart, MUIA_Selected, &lng); SetAutostart(lng); return TRUE; }
bool ON_Surface::SetDomain( int dir, ON_Interval domain ) { return ( dir >= 0 && dir <= 1 && domain.IsIncreasing() && SetDomain( dir, domain[0], domain[1] )) ? true : false; }
bool ON_ArcCurve::Extend( const ON_Interval& domain ) { if (IsClosed()) return false; double s0, s1; bool changed = false; GetDomain(&s0, &s1); if (domain[0] < s0){ s0 = domain[0]; changed = true; } if (domain[1] > s1){ s1 = domain[1]; changed = true; } if (!changed) return false; double a0 = m_arc.Domain().ParameterAt(Domain().NormalizedParameterAt(s0)); double a1 = m_arc.Domain().ParameterAt(Domain().NormalizedParameterAt(s1)); if (a1 > a0+2.0*ON_PI) { a1 = a0+2.0*ON_PI; s1 = Domain().ParameterAt(m_arc.Domain().NormalizedParameterAt(a1)); } m_arc.Trim(ON_Interval(a0, a1)); SetDomain(s0, s1); return true; }
bool ON_LineCurve::Extend( const ON_Interval& domain ) { double len = Domain().Length(); ON_3dVector V = m_line.Direction(); ON_3dPoint Q0 = m_line.from; ON_3dPoint Q1 = m_line.to; double t0 = Domain()[0]; double t1 = Domain()[1]; bool do_it = false; if (domain[1] > Domain()[1]) { Q1 += (domain[1]-Domain()[1])/len*V; t1 = domain[1]; do_it = true; } if (domain[0] < Domain()[0]) { Q0 += (domain[0]-Domain()[0])/len*V; t0 = domain[0]; do_it = true; } if (do_it){ m_line = ON_Line(Q0, Q1); SetDomain(t0, t1); DestroyCurveTree(); } return do_it; }
bool CSMTPClientInstance::Connect( void ) { char szLineBuffer[1024]; char szDomain[1024]; char szResponseMessage[1024]; uint32_t readLen = 0; uint32_t responseCode = 0; // Wait for server response m_pIOConnection->ReadLine( (uint8_t*)szLineBuffer, 1024 ); // Parse response sscanf( szLineBuffer, "%d %s %s\r\n", &responseCode, szDomain, szResponseMessage ); if ( responseCode != 220 ) { m_state = STATE_ERROR; return false; } SetDomain( szDomain ); // Advance state m_state = STATE_DOHELO; return true; }
MonteCarloIntegral::MonteCarloIntegral(int n_, int m_, const Range* domain) { n = n_; m = m_; /* Initialize domain */ V.resize(n); SetDomain(domain); /* Set internal parameters */ maxeval = DEFAULT_MAXEVAL; nbatch = DEFAULT_BATCHSIZE; nstart = DEFAULT_NSTART; nincrease = DEFAULT_NINCREASE; }
bool HistogramAttributes::CopyAttributes(const AttributeGroup *atts) { bool retval = false; if(TypeName() == atts->TypeName()) { // Call assignment operator. const HistogramAttributes *tmp = (const HistogramAttributes *)atts; *this = *tmp; retval = true; } else if(atts->TypeName() == "PickAttributes") { const PickAttributes *tmp = (const PickAttributes*)atts; int dom = tmp->GetDomain(); dom = (dom < 0 ? 0 : dom); // -1 is val for single domain problems SetDomain(dom); SetZone(tmp->GetElementNumber()); retval = true; } return retval; }
void QueryAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("QueryAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("name")) != 0) SetName(node->AsString()); if((node = searchNode->GetNode("variables")) != 0) SetVariables(node->AsStringVector()); if((node = searchNode->GetNode("resultsMessage")) != 0) SetResultsMessage(node->AsString()); if((node = searchNode->GetNode("worldPoint")) != 0) SetWorldPoint(node->AsDoubleArray()); if((node = searchNode->GetNode("domain")) != 0) SetDomain(node->AsInt()); if((node = searchNode->GetNode("element")) != 0) SetElement(node->AsInt()); if((node = searchNode->GetNode("resultsValue")) != 0) SetResultsValue(node->AsDoubleVector()); if((node = searchNode->GetNode("elementType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetElementType(ElementType(ival)); } else if(node->GetNodeType() == STRING_NODE) { ElementType value; if(ElementType_FromString(node->AsString(), value)) SetElementType(value); } } if((node = searchNode->GetNode("timeStep")) != 0) SetTimeStep(node->AsInt()); if((node = searchNode->GetNode("varTypes")) != 0) SetVarTypes(node->AsIntVector()); if((node = searchNode->GetNode("dataType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetDataType(DataType(ival)); } else if(node->GetNodeType() == STRING_NODE) { DataType value; if(DataType_FromString(node->AsString(), value)) SetDataType(value); } } if((node = searchNode->GetNode("pipeIndex")) != 0) SetPipeIndex(node->AsInt()); if((node = searchNode->GetNode("useGlobalId")) != 0) SetUseGlobalId(node->AsBool()); if((node = searchNode->GetNode("xUnits")) != 0) SetXUnits(node->AsString()); if((node = searchNode->GetNode("yUnits")) != 0) SetYUnits(node->AsString()); if((node = searchNode->GetNode("darg1")) != 0) SetDarg1(node->AsDoubleVector()); if((node = searchNode->GetNode("darg2")) != 0) SetDarg2(node->AsDoubleVector()); if((node = searchNode->GetNode("floatFormat")) != 0) SetFloatFormat(node->AsString()); if((node = searchNode->GetNode("xmlResult")) != 0) SetXmlResult(node->AsString()); }
bool ON_CurveProxy::SetDomain( ON_Interval domain ) { return SetDomain( domain[0], domain[1] ) ? true : false; }
BOOL ON_BrepTrim::Read( ON_BinaryArchive& file ) { ON_3dPoint P[2]; int i; BOOL rc = file.ReadInt( &m_trim_index ); if ( rc ) rc = file.ReadInt( &m_c2i ); if ( rc ) { ON_Interval d; rc = file.ReadInterval( d ); if (rc) { SetProxyCurveDomain(d); SetDomain(d); } } if ( rc ) rc = file.ReadInt( &m_ei ); if ( rc ) rc = file.ReadInt( 2, m_vi ); if ( rc ) { i = m_bRev3d; rc = file.ReadInt( &i ); if (rc) m_bRev3d = (i!=0); } i = unknown; if ( rc ) rc = file.ReadInt( &i ); switch (i) { case unknown: m_type = unknown; break; case boundary: m_type = boundary; break; case mated: m_type = mated; break; case seam: m_type = seam; break; case singular: m_type = singular; break; } i = ON_Surface::not_iso; if ( rc ) rc = file.ReadInt( &i ); switch(i) { case ON_Surface::not_iso: m_iso = ON_Surface::not_iso; break; case ON_Surface::x_iso: m_iso = ON_Surface::x_iso; break; case ON_Surface::y_iso: m_iso = ON_Surface::y_iso; break; case ON_Surface::W_iso: m_iso = ON_Surface::W_iso; break; case ON_Surface::S_iso: m_iso = ON_Surface::S_iso; break; case ON_Surface::E_iso: m_iso = ON_Surface::E_iso; break; case ON_Surface::N_iso: m_iso = ON_Surface::N_iso; break; } if ( rc ) rc = file.ReadInt( &m_li ); if ( rc ) rc = file.ReadDouble( 2, m_tolerance ); if ( file.Archive3dmVersion() >= 3 && file.ArchiveOpenNURBSVersion() >= 200206180 ) { // read trim proxy curve information added in version 200206180 ON_Interval d = ProxyCurveDomain(); if (rc ) { rc = file.ReadInterval( d ); if ( !rc ) d = ProxyCurveDomain(); } unsigned char b[24]; memset(b,0,sizeof(b)); bool bProxyCurveIsReversed = false; if (rc) { rc = file.ReadChar(8,b); if (rc && b[0] == 1 ) bProxyCurveIsReversed = true; } if (rc) rc = file.ReadChar(24,b); if ( bProxyCurveIsReversed ) ON_CurveProxy::Reverse(); SetDomain(d); } else { if ( rc ) rc = file.ReadPoint( P[0] ); //m_P[0] ); if ( rc ) rc = file.ReadPoint( P[1] ); //m_P[1] ); } if ( rc ) rc = file.ReadDouble( &m__legacy_2d_tol ); if ( rc ) rc = file.ReadDouble( &m__legacy_3d_tol ); return rc; }
ON_BOOL32 ON_PolyEdgeCurve::ChangeClosedCurveSeam( double t ) { //int saved_is_closed_helper = m_is_closed_helper; if ( SegmentCount() == 1 ) { // A ON_PolyEdgeSegment cannot have its start/end // changed. Split it into two segments and let // ON_PolyCurve::ChangeClosedCurveSeam() do the work. if ( !IsClosed() ) return false; ON_Interval crvd = Domain(); double s = crvd.NormalizedParameterAt(t); if ( s <= ON_SQRT_EPSILON || s >= (1.0 - ON_SQRT_EPSILON) ) { s = fmod(s,1.0); if ( s < 0.0 ) s += 1.0; if ( fabs(s) <= ON_SQRT_EPSILON || fabs(1.0-s) <= ON_SQRT_EPSILON ) { // split parameter is at start/end of this segemnt if ( t != crvd[0] ) { DestroyRuntimeCache(); SetDomain(t,t+crvd.Length() ); //m_is_closed_helper = saved_is_closed_helper; } return true; } return false; } ON_PolyEdgeSegment* left_seg = SegmentCurve(0); if ( 0 == left_seg ) return false; DestroyRuntimeCache(); ON_Curve* left = left_seg; ON_Curve* right = 0; double segt = SegmentCurveParameter(t); if ( !left_seg->Split(segt,left,right) ) return false; SetDomain(crvd[0],t); ON_PolyEdgeSegment* right_seg = ON_PolyEdgeSegment::Cast(right); if ( 0 == right_seg ) return false; Append(right_seg); double st[3]; st[0] = crvd[0]; st[1] = t; st[2] = crvd[1]; SetParameterization( st ); } // ON_PolyCurve::ChangeClosedCurveSeam works fine on // two or more segments. ON_BOOL32 rc = ON_PolyCurve::ChangeClosedCurveSeam(t); //if ( saved_is_closed_helper ) // m_is_closed_helper = saved_is_closed_helper; return rc; }
void HistogramAttributes::SetFromNode(DataNode *parentNode) { if(parentNode == 0) return; DataNode *searchNode = parentNode->GetNode("HistogramAttributes"); if(searchNode == 0) return; DataNode *node; if((node = searchNode->GetNode("basedOn")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetBasedOn(BasedOn(ival)); } else if(node->GetNodeType() == STRING_NODE) { BasedOn value; if(BasedOn_FromString(node->AsString(), value)) SetBasedOn(value); } } if((node = searchNode->GetNode("histogramType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetHistogramType(BinContribution(ival)); } else if(node->GetNodeType() == STRING_NODE) { BinContribution value; if(BinContribution_FromString(node->AsString(), value)) SetHistogramType(value); } } if((node = searchNode->GetNode("weightVariable")) != 0) SetWeightVariable(node->AsString()); if((node = searchNode->GetNode("limitsMode")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetLimitsMode(LimitsMode(ival)); } else if(node->GetNodeType() == STRING_NODE) { LimitsMode value; if(LimitsMode_FromString(node->AsString(), value)) SetLimitsMode(value); } } if((node = searchNode->GetNode("minFlag")) != 0) SetMinFlag(node->AsBool()); if((node = searchNode->GetNode("maxFlag")) != 0) SetMaxFlag(node->AsBool()); if((node = searchNode->GetNode("min")) != 0) SetMin(node->AsDouble()); if((node = searchNode->GetNode("max")) != 0) SetMax(node->AsDouble()); if((node = searchNode->GetNode("numBins")) != 0) SetNumBins(node->AsInt()); if((node = searchNode->GetNode("domain")) != 0) SetDomain(node->AsInt()); if((node = searchNode->GetNode("zone")) != 0) SetZone(node->AsInt()); if((node = searchNode->GetNode("useBinWidths")) != 0) SetUseBinWidths(node->AsBool()); if((node = searchNode->GetNode("outputType")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 2) SetOutputType(OutputType(ival)); } else if(node->GetNodeType() == STRING_NODE) { OutputType value; if(OutputType_FromString(node->AsString(), value)) SetOutputType(value); } } if((node = searchNode->GetNode("lineStyle")) != 0) SetLineStyle(node->AsInt()); if((node = searchNode->GetNode("lineWidth")) != 0) SetLineWidth(node->AsInt()); if((node = searchNode->GetNode("color")) != 0) color.SetFromNode(node); if((node = searchNode->GetNode("dataScale")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetDataScale(DataScale(ival)); } else if(node->GetNodeType() == STRING_NODE) { DataScale value; if(DataScale_FromString(node->AsString(), value)) SetDataScale(value); } } if((node = searchNode->GetNode("binScale")) != 0) { // Allow enums to be int or string in the config file if(node->GetNodeType() == INT_NODE) { int ival = node->AsInt(); if(ival >= 0 && ival < 3) SetBinScale(DataScale(ival)); } else if(node->GetNodeType() == STRING_NODE) { DataScale value; if(DataScale_FromString(node->AsString(), value)) SetBinScale(value); } } if((node = searchNode->GetNode("normalizeHistogram")) != 0) SetNormalizeHistogram(node->AsBool()); if((node = searchNode->GetNode("computeAsCDF")) != 0) SetComputeAsCDF(node->AsBool()); }