Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rust 获取返回“f64”而不是“[u8;4]的值`_Rust - Fatal编程技术网

Rust 获取返回“f64”而不是“[u8;4]的值`

Rust 获取返回“f64”而不是“[u8;4]的值`,rust,Rust,我使用的是噪音板条箱,无法理解如何将其转换为RGB值 noise = "0.7.0" pub-type-Color=[u8;4]; 我正在尝试使用get\u value()函数,如下图所示: pub fn get_值(&self,x:usize,y:usize)->颜色{ let(宽度、高度)=自身尺寸; 如果x

我使用的是
噪音
板条箱,无法理解如何将其转换为RGB值

noise = "0.7.0"
pub-type-Color=[u8;4];
我正在尝试使用
get\u value()
函数,如下图所示:

pub fn get_值(&self,x:usize,y:usize)->颜色{
let(宽度、高度)=自身尺寸;
如果x<宽度和y<高度{
自映射[x+y*宽度]
}否则{
自我边界颜色
}
}
get_value()
是为PlaneMapBuilder实现的。因此我希望
PlaneMapBuilder::get_value(x,y)
返回格式为
[r,g,b,a]
的内容,但这不会发生:

外部板条箱噪音;
使用噪音::{utils::*,翻滚};
fn main(){
让mut my_noise=PlaneMapBuilder::new(&Billow::new()).build();
让my_val=my_noise.get_值(1,1);
println!(“{}”,my_val.to_string());
///返回类似于-0.6107655150546的值,而不是我所期望的[u8;4]
}
在中,我看到了
add\u gradient\u point()
的定义,它将
颜色作为参数:

pub fn添加梯度点(多个self,位置:f64,颜色)->self{
//检查向量是否已包含输入点。
如果!赛尔夫
.梯度点
.国际热核实验堆(iter)
.any(|&x |(x.pos-pos).abs()
在这里,他们使用了
[u8;4]
结构,我希望
颜色
类型:

let jade_gradient=ColorGradient::new()
.clear_gradient()
.添加梯度点(-1.000,[24146102255])
.添加梯度点(0.000,[78154115255])
什么可以解释这种行为

get\u value()
是为
PlaneMapBuilder

“实现”
get\u value()
是正确的。但是,它不是
get_value()
from。实际上,它返回的是
f64
,而不是
Color


根据您想要的“颜色”类型,您可以使用
&my_noise
调用它的方法,该方法返回
NoiseImage

//noise=“0.7.0”
使用噪音::{utils::*,翻滚};
fn main(){
让my_noise=PlaneMapBuilder::new(&Billow::new()).build();
让image=ImageRenderer::new().render(&my_noise);
让my_val=image.get_值(1,1);
println!(“{:?}”,my_val);
//打印:`[18,18,18,255]`
}

在这里,它们使用了
[u8;4]
结构,我希望
颜色
类型使用这种结构

只是要清楚,在这种情况下,这些是相同的事情。简而言之,
type
关键字允许您为现有类型定义新的“”。基本上,您可以为复杂类型提供一个速记名称。然而,它们仍然是相同的类型