te')); return $arr; } /* 遍历用户所有主题 * @param $uid 用户ID * @param int $page 页数 * @param int $pagesize 每页记录条数 * @param bool $desc 排序方式 TRUE降序 FALSE升序 * @param string $key 返回的数组用那一列的值作为 key * @param array $col 查询哪些列 */ function thread_tid_find_by_uid($uid, $page = 1, $pagesize = 1000, $desc = TRUE, $key = 'tid', $col = array()) { if (empty($uid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('uid' => $uid), array('tid' => $orderby), $page, $pagesize, $key, $col); return $arr; } // 遍历栏目下tid 支持数组 $fid = array(1,2,3) function thread_tid_find_by_fid($fid, $page = 1, $pagesize = 1000, $desc = TRUE) { if (empty($fid)) return array(); $orderby = TRUE == $desc ? -1 : 1; $arr = thread_tid__find($cond = array('fid' => $fid), array('tid' => $orderby), $page, $pagesize, 'tid', array('tid', 'verify_date')); return $arr; } function thread_tid_delete($tid) { if (empty($tid)) return FALSE; $r = thread_tid__delete(array('tid' => $tid)); return $r; } function thread_tid_count() { $n = thread_tid__count(); return $n; } // 统计用户主题数 大数量下严谨使用非主键统计 function thread_uid_count($uid) { $n = thread_tid__count(array('uid' => $uid)); return $n; } // 统计栏目主题数 大数量下严谨使用非主键统计 function thread_fid_count($fid) { $n = thread_tid__count(array('fid' => $fid)); return $n; } ?>javascript - THREE.Color: Unknown color #002dff (warningerror) - Stack Overflow
最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - THREE.Color: Unknown color #002dff (warningerror) - Stack Overflow

programmeradmin4浏览0评论

I need to update the color after receiving the value from dat.GUI . But, this

var colored = new THREE.Color(value.replace("#","0x"));

is throwing this warning "THREE.Color: Unknown color 0x002dff" and the 'colored' isn't updating.

value = #002dff (at that time, it keeps on changing, user input)

Edit: I know I can use this as "THREE.Color( #002dff )", but the color is changing at run time according to the user input from controls I've created using dat.GUI, so I won't be knowing the actual value that can be added to the code.

PS: It was replace() which was causing the problem. It's solved.

I need to update the color after receiving the value from dat.GUI . But, this

var colored = new THREE.Color(value.replace("#","0x"));

is throwing this warning "THREE.Color: Unknown color 0x002dff" and the 'colored' isn't updating.

value = #002dff (at that time, it keeps on changing, user input)

Edit: I know I can use this as "THREE.Color( #002dff )", but the color is changing at run time according to the user input from controls I've created using dat.GUI, so I won't be knowing the actual value that can be added to the code.

PS: It was replace() which was causing the problem. It's solved.

Share Improve this question edited Jun 9, 2017 at 7:38 Utkarsh Zaveri asked Jun 7, 2017 at 11:09 Utkarsh ZaveriUtkarsh Zaveri 1512 silver badges12 bronze badges 5
  • wow just pass it like new THREE.Color("#fff000") or etc – Maciej Kozieja Commented Jun 7, 2017 at 11:11
  • Only if I could. I mentioned that the value is generating from dat.GUI . – Utkarsh Zaveri Commented Jun 7, 2017 at 11:19
  • What revision of Three.js do you use? In the latest revision (r85) it works totally fine. – prisoner849 Commented Jun 7, 2017 at 12:53
  • r84. And I doubt it'll work as dat.GUI returns string value and the color constructor requires Hex value. @Hellium just mentioned this in his ment. – Utkarsh Zaveri Commented Jun 7, 2017 at 13:01
  • Take a look at my answer and check its example, please. – prisoner849 Commented Jun 7, 2017 at 13:04
Add a ment  | 

3 Answers 3

Reset to default 14

You have to give a hexadecimal number, not a string to the Color constructor. Try to call the parseInt function:

var colorValue = parseInt ( value.replace("#","0x"), 16 );
var colored = new THREE.Color( colorValue );

try this ((new THREE.color("#FF00FF")),.if you want to choose a favortie color for your program .check this link out http://www.rapidtables./web/color/RGB_Color.htm ,are got to the photoshop and their you can select the color and it shows the color code .

THREE.Color() has the .setStyle() method.

var obj;
var gui = new dat.GUI();
var props = {
    color: '#002dff'
};
var colorController = gui.addColor(props, 'color');
colorController.onChange(
    function(value){
    // unment this to see it's working
    //var colored = new THREE.Color(value);
    //console.log(colored);
    obj.material.color.setStyle(value);
  }
);

var sphere = new THREE.Mesh(new THREE.SphereGeometry(2, 32, 24), new THREE.MeshStandardMaterial());
sphere.material.color.setStyle("#002dff");
scene.add(sphere);
obj = sphere;

jsfiddle example. three.js r85, dat.GUI 0.6.5

PS Don't use new THREE.Color() to change an exisiting colour of a material, use setXXXXX() methods of THREE.Color()

发布评论

评论列表(0)

  1. 暂无评论