当前位置: 首页>>代码示例>>C++>>正文


C++ People::numberofPeopleSchedule方法代码示例

本文整理汇总了C++中People::numberofPeopleSchedule方法的典型用法代码示例。如果您正苦于以下问题:C++ People::numberofPeopleSchedule方法的具体用法?C++ People::numberofPeopleSchedule怎么用?C++ People::numberofPeopleSchedule使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在People的用法示例。


在下文中一共展示了People::numberofPeopleSchedule方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: idfObject

boost::optional<IdfObject> ForwardTranslator::translatePeople( People & modelObject )
{
  IdfObject idfObject(openstudio::IddObjectType::People);
  m_idfObjects.push_back(idfObject);

  for (LifeCycleCost lifeCycleCost : modelObject.lifeCycleCosts()){
    translateAndMapModelObject(lifeCycleCost);
  }

  PeopleDefinition definition = modelObject.peopleDefinition();

  idfObject.setString(PeopleFields::Name, modelObject.name().get());

  boost::optional<Space> space = modelObject.space();
  boost::optional<SpaceType> spaceType = modelObject.spaceType();
  if (space){
    boost::optional<ThermalZone> thermalZone = space->thermalZone();
    if (thermalZone){
      idfObject.setString(PeopleFields::ZoneorZoneListName, thermalZone->name().get());
    }
  }else if(spaceType){
    idfObject.setString(PeopleFields::ZoneorZoneListName, spaceType->name().get());
  }

  boost::optional<Schedule> schedule = modelObject.numberofPeopleSchedule();
  if (schedule){
    idfObject.setString(PeopleFields::NumberofPeopleScheduleName, schedule->name().get());
  }

  idfObject.setString(PeopleFields::NumberofPeopleCalculationMethod, definition.numberofPeopleCalculationMethod());

  double multiplier = modelObject.multiplier();

  OptionalDouble d = definition.numberofPeople();
  if (d){
    idfObject.setDouble(PeopleFields::NumberofPeople, (*d)*multiplier);
  }

  d = definition.peopleperSpaceFloorArea();
  if (d){
    idfObject.setDouble(PeopleFields::PeopleperZoneFloorArea, (*d)*multiplier);
  }

  d = definition.spaceFloorAreaperPerson();
  if (d){
    idfObject.setDouble(PeopleFields::ZoneFloorAreaperPerson, (*d)*multiplier);
  }

  d = definition.fractionRadiant();
  if (d){
    idfObject.setDouble(PeopleFields::FractionRadiant, *d);
  }

  d = definition.sensibleHeatFraction();
  if (d){
    idfObject.setDouble(PeopleFields::SensibleHeatFraction, *d);
  }

  schedule = modelObject.activityLevelSchedule();
  if (schedule){
    idfObject.setString(PeopleFields::ActivityLevelScheduleName, schedule->name().get());
  }

  if (!definition.isCarbonDioxideGenerationRateDefaulted()){
    idfObject.setDouble(PeopleFields::CarbonDioxideGenerationRate, definition.carbonDioxideGenerationRate());
  }

  if (!definition.isEnableASHRAE55ComfortWarningsDefaulted()){
    if (definition.enableASHRAE55ComfortWarnings()){
      idfObject.setString(PeopleFields::EnableASHRAE55ComfortWarnings, "Yes");
    }else{
       idfObject.setString(PeopleFields::EnableASHRAE55ComfortWarnings, "No");
    }
  }

  if (!definition.isMeanRadiantTemperatureCalculationTypeDefaulted()){
    idfObject.setString(PeopleFields::MeanRadiantTemperatureCalculationType, definition.meanRadiantTemperatureCalculationType());
  }

  // TODO: Surface Name/Angle Factor List Name

  schedule = modelObject.workEfficiencySchedule();
  if (schedule){
    idfObject.setString(PeopleFields::WorkEfficiencyScheduleName, schedule->name().get());
  }

  schedule = modelObject.clothingInsulationSchedule();
  if (schedule){
    idfObject.setString(PeopleFields::ClothingInsulationScheduleName, schedule->name().get());
  }

  schedule = modelObject.airVelocitySchedule();
  if (schedule){
    idfObject.setString(PeopleFields::AirVelocityScheduleName, schedule->name().get());
  }

  for (int i = 0, n = definition.numThermalComfortModelTypes(); i < n; ++i) {
    OptionalString s = definition.getThermalComfortModelType(i);
    if (s) {
      idfObject.pushExtensibleGroup(StringVector(1u,*s));
//.........这里部分代码省略.........
开发者ID:CheyenneBerlin,项目名称:OpenStudio,代码行数:101,代码来源:ForwardTranslatePeople.cpp


注:本文中的People::numberofPeopleSchedule方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。