diff --git a/examples/print.php b/examples/print.php index 636490a..714ae93 100644 --- a/examples/print.php +++ b/examples/print.php @@ -6,7 +6,7 @@ namespace Blobt\Luxcore\scene; include dirname(dirname(__FILE__)) . "/vendor/autoload.php"; -/* + //设置打印渲染引擎的配置参数 $renderEngine = new RenderEngine(); echo $renderEngine; @@ -28,20 +28,16 @@ $sampler = new Sampler(['imagemutationrate' => 0.888]); $sampler->random->overlapping = 32; echo $sampler; - +//设置打印 灯光策略 配置参数 $lightStrategy = new LightStrategy(); echo $lightStrategy; - - +//设置打印 文件储存格式 配置参数 $filesaver = new FileSaver(); - echo $filesaver; -*/ - -$img = new Film(); - -echo $img; +//设置打印 “胶片” 配置参数 +$film = new Film(); +echo $film; ?> diff --git a/src/scene/BaseCfg.php b/src/scene/BaseCfg.php index bf4684f..4006d02 100644 --- a/src/scene/BaseCfg.php +++ b/src/scene/BaseCfg.php @@ -53,7 +53,14 @@ class BaseCfg extends Base $value = $item->getValue($this); if (is_string($value)) { - $ret .= "{$className}.{$name} = \"{$value}\"\n"; + if( count(explode(" ", $value)) != 3 || in_array(false,array_map('is_numeric',explode(" ", $value))) ) + { + $ret .= "{$className}.{$name} = \"{$value}\"\n"; + } + else + { + $ret .= "{$className}.{$name} = {$value}\n"; + } } else if (is_integer($value)) { diff --git a/src/scene/Film.php b/src/scene/Film.php index 01e9586..7bf0768 100644 --- a/src/scene/Film.php +++ b/src/scene/Film.php @@ -56,7 +56,8 @@ class Film extends BaseCfg $this->noiseEstimation = new NoiseEstimation($config); $this->filter = new Filter($config); - $this->imagepipelines = []; + $this->imagepipelines[] = new NoiseReducerOIDN(); + $this->imagepipelines[] = new NoiseReducerBCD(); $this->outputs[] = new ImageSaverBase(); $this->outputs[] = new ImageSaverNumber(); diff --git a/src/utils/StringHelper.php b/src/utils/StringHelper.php index 739a883..b301d98 100644 --- a/src/utils/StringHelper.php +++ b/src/utils/StringHelper.php @@ -37,18 +37,17 @@ class StringHelper } else if( is_string($value) ) { - if( mb_ereg('^[0-9]+$',str_replace('.','',str_replace(' ','',$value))) ) + if( count(explode(" ", $value)) != 3 || in_array(false,array_map('is_numeric',explode(" ", $value))) ) { - $retStr[] = "{$key} = {$value}"; + $retStr[] = "{$key} = \"{$value}\""; } else { - $retStr[] = "{$key} = \"{$value}\""; + $retStr[] = "{$key} = {$value}"; } } else if(is_object($value) && $value instanceof BaseCfg) { - foreach( explode("\n", $value->toString()) as $value ) { if(!empty($value))