shapes 相关问题

与绘制或定义形状相关的问题。

如何在javafx中创建这样的形状?

我想创建一个分为四个三角形部分的形状。我怎样才能做到这一点?

回答 1 投票 -2

如何在一个可绘制的形状内实现带有对角线的圆角?

如何实现圆角和对角线形状,如android shape xml中所示?谢谢

回答 1 投票 0

定制形状控件

我对C#知之甚少,我正在尝试使用WinForms应用程序来创建8x8像素的单色位图。我希望用户界面如下所示:这里,每个黑色......

回答 3 投票 -1

如何填充形状外的颜色(椭圆形)

我希望能够使用Graphics2D实例绘制BufferedImage,并在Shape外部填充Color。如果这是一个像Rectangle这样的形状,那将很容易,但是我需要工作的形状......

回答 3 投票 4

VBA Excel,形状数组。如何修复错误“索引到指定的集合是否超出界限”?

在Excel中,我有三个名为ON_1,ON_2和ON_3的形状。我正在尝试构建一个Shape索引数组并获取ShapeRange。我有VBA代码,但我得到一个错误,说;进入...的索引

回答 2 投票 0

我在使用JavaFX绘制十字架时遇到问题

我正在尝试编写将在网格上对角绘制3个形状的代码。前两个形状是正方形和圆形,我能够做到。然而,第三种形状给了我一些悲伤。 ...

回答 2 投票 4

如何使用Pandas创建随机整数的DataFrame?

我知道如果我使用randn,导入pandas作为pd import numpy as np df = pd.DataFrame(np.random.randn(100,4),columns = list('ABCD'))给了我想要的东西,但是来自正常的元素......

回答 1 投票 72

如何使用具有可变形状或尺寸的输入?

我是TensorFlow的新手,我必须实现一个具有大量图像作为输入的模型。但是这些图像没有相同的尺寸,所以当我将它们转换成数组时,它们就没有相同的...

回答 1 投票 0

当显示多个完整的地球时,以低变焦显示两个多边形(包裹它们)

如何在世界各地包裹形状,以便在低变焦时多次显示形状?示例:我在USA上绘制一个多边形。我缩小以便能看到两个美国的。我只看到一个多边形:(我...

回答 2 投票 2

如何修复'ValueError:无法为Tensor Y提供形状X的值,Tensor Y在Keras上具有Z形状

模型架构模型= Sequential()model.add(LSTM(50,batch_input_shape(50,10,9),return_sequences = True))model.add(LSTM(30,return_sequences = True,activation ='tanh'))模型。添加(LSTM(20,...

回答 1 投票 0

如何在Java中获取CGAffineTransform的Shape旋转图像

我能够旋转图像。这非常有效。但是,我希望能够将结果图像的形状/多边形外加,以便当鼠标移过...时可以使用它来捕获鼠标事件。

回答 3 投票 0

您必须为占位符张量'Placeholder_2'提供一个值,其中dtype为float和shape [?,10]

我不知道为什么会出现这个问题,我已经多次检查过,我已经向feed_dict提供了xs和ys。那么,这个问题的原因是什么?如何修改代码以解决这些错误?以下是......

回答 1 投票 0

删除HTML5中制作的圆圈画布[复制]

我做了一个画布,我画了形状。当我想删除它们时,我基本上再次创建相同的形状但它是白色的,所以我不删除任何其他形状(保存x和y坐标,所以...

回答 2 投票 1

以编程方式设置安卓形状颜色

我正在编辑以使问题更简单,希望这有助于获得准确的答案。 假设我有以下椭圆形: 我正在编辑以使问题更简单,希望有助于准确回答。 说我有以下oval形状: <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <solid android:angle="270" android:color="#FFFF0000"/> <stroke android:width="3dp" android:color="#FFAA0055"/> </shape> 如何在活动类中以编程方式设置颜色? 注意:答案已更新以涵盖background是ColorDrawable的实例的场景。感谢Tyler Pfaff,指出这一点。 drawable 是一个椭圆,是 ImageView 的背景 使用Drawable从imageView获取getBackground(): Drawable background = imageView.getBackground(); 检查通常的嫌疑人: if (background instanceof ShapeDrawable) { // cast to 'ShapeDrawable' ShapeDrawable shapeDrawable = (ShapeDrawable) background; shapeDrawable.getPaint().setColor(ContextCompat.getColor(mContext,R.color.colorToSet)); } else if (background instanceof GradientDrawable) { // cast to 'GradientDrawable' GradientDrawable gradientDrawable = (GradientDrawable) background; gradientDrawable.setColor(ContextCompat.getColor(mContext,R.color.colorToSet)); } else if (background instanceof ColorDrawable) { // alpha value may need to be set again after this call ColorDrawable colorDrawable = (ColorDrawable) background; colorDrawable.setColor(ContextCompat.getColor(mContext,R.color.colorToSet)); } 精简版: Drawable background = imageView.getBackground(); if (background instanceof ShapeDrawable) { ((ShapeDrawable)background).getPaint().setColor(ContextCompat.getColor(mContext,R.color.colorToSet)); } else if (background instanceof GradientDrawable) { ((GradientDrawable)background).setColor(ContextCompat.getColor(mContext,R.color.colorToSet)); } else if (background instanceof ColorDrawable) { ((ColorDrawable)background).setColor(ContextCompat.getColor(mContext,R.color.colorToSet)); } 请注意,不需要空检查。 但是,如果在其他地方使用它们,您应该在修改它们之前对可绘制对象使用mutate()。 (默认情况下,从 XML 加载的可绘制对象共享相同的状态。) 如今更简单的解决方案是使用您的形状作为背景,然后通过以下方式以编程方式更改其颜色: view.background.setColorFilter(Color.parseColor("#343434"), PorterDuff.Mode.SRC_ATOP) 有关可用选项,请参阅PorterDuff.Mode。 更新(API 29): 自 API 29 以来,上述方法已被弃用,并由以下方法代替: view.background.colorFilter = BlendModeColorFilter(Color.parseColor("#343434"), BlendMode.SRC_ATOP) 有关可用选项,请参阅BlendMode。 这样做: ImageView imgIcon = findViewById(R.id.imgIcon); GradientDrawable backgroundGradient = (GradientDrawable)imgIcon.getBackground(); backgroundGradient.setColor(getResources().getColor(R.color.yellow)); 这个问题不久前得到了回答,但它可以通过重写为 kotlin 扩展函数来实现现代化。 fun Drawable.overrideColor(@ColorInt colorInt: Int) { when (this) { is GradientDrawable -> setColor(colorInt) is ShapeDrawable -> paint.color = colorInt is ColorDrawable -> color = colorInt } } 试试这个: public void setGradientColors(int bottomColor, int topColor) { GradientDrawable gradient = new GradientDrawable(Orientation.BOTTOM_TOP, new int[] {bottomColor, topColor}); gradient.setShape(GradientDrawable.RECTANGLE); gradient.setCornerRadius(10.f); this.setBackgroundDrawable(gradient); } 有关更多详细信息,请查看此链接this 希望有所帮助。 希望这会帮助有同样问题的人 GradientDrawable gd = (GradientDrawable) YourImageView.getBackground(); //To shange the solid color gd.setColor(yourColor) //To change the stroke color int width_px = (int)TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, youStrokeWidth, getResources().getDisplayMetrics()); gd.setStroke(width_px, yourColor); 扩展 Vikram 的 答案,如果你正在为动态视图着色,比如回收器视图项目等......那么你可能想在设置颜色之前调用 mutate() 。如果您不这样做,任何具有公共可绘制对象(即背景)的视图也将更改/着色它们的可绘制对象。 public static void setBackgroundColorAndRetainShape(final int color, final Drawable background) { if (background instanceof ShapeDrawable) { ((ShapeDrawable) background.mutate()).getPaint().setColor(color); } else if (background instanceof GradientDrawable) { ((GradientDrawable) background.mutate()).setColor(color); } else if (background instanceof ColorDrawable) { ((ColorDrawable) background.mutate()).setColor(color); }else{ Log.w(TAG,"Not a valid background type"); } } 这是对我有用的解决方案......也在另一个问题中写道: 如何动态改变形状颜色? //get the image button by id ImageButton myImg = (ImageButton) findViewById(R.id.some_id); //get drawable from image button GradientDrawable drawable = (GradientDrawable) myImg.getDrawable(); //set color as integer //can use Color.parseColor(color) if color is a string drawable.setColor(color) 对我来说没什么用,但是当我设置色调颜色时,它适用于 Shape Drawable Drawable background = imageView.getBackground(); background.setTint(getRandomColor()) 需要 android 5.0 API 21 我的 Kotlin 扩展功能 版本基于上面的答案与 Compat: fun Drawable.overrideColor_Ext(context: Context, colorInt: Int) { val muted = this.mutate() when (muted) { is GradientDrawable -> muted.setColor(ContextCompat.getColor(context, colorInt)) is ShapeDrawable -> muted.paint.setColor(ContextCompat.getColor(context, colorInt)) is ColorDrawable -> muted.setColor(ContextCompat.getColor(context, colorInt)) else -> Log.d("Tag", "Not a valid background type") } } 用Radius填充形状的简单方法是: (view.getBackground()).setColorFilter(Color.parseColor("#FFDE03"), PorterDuff.Mode.SRC_IN); 可能是我来晚了。但是如果你使用的是 Kotlin。有这样的方式 var gd = layoutMain.background as GradientDrawable //gd.setCornerRadius(10) gd.setColor(ContextCompat.getColor(ctx , R.color.lightblue)) gd.setStroke(1, ContextCompat.getColor(ctx , R.color.colorPrimary)) // (Strokewidth,colorId) 享受.... 这可能有帮助 1.初始设置形状颜色为透明 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval"> <solid android:angle="270" android:color="@android:color/transparent"/> <stroke android:width="3dp" android:color="#FFAA0055"/> </shape> 将形状设置为视图的背景 设置您喜欢的颜色如下: Drawable bg = view.getBackground(); bg.setColorFilter(Color.parseColor("#Color"), PorterDuff.Mode.ADD); 我需要在我的适配器中执行此操作,但上面的解决方案要么不起作用,要么需要 >= android 版本 10。下面的代码对我有用! val drawable = DrawableCompat.wrap(holder.courseName.background) DrawableCompat.setTint(drawable, Color.parseColor("#4a1f60")) 对于任何使用 C# Xamarin 的人,这里有一个基于 Vikram 代码片段的方法: private void SetDrawableColor(Drawable drawable, Android.Graphics.Color color) { switch (drawable) { case ShapeDrawable sd: sd.Paint.Color = color; break; case GradientDrawable gd: gd.SetColor(color); break; case ColorDrawable cd: cd.Color = color; break; } } 更改自定义可绘制对象的纯色的最佳方法是 对于科特林。 (findViewById<TextView>(R.id.testing1).getBackground()).setColorFilter(Color.parseColor("#FFDE03"), PorterDuff.Mode.SRC_IN); 我们可以创建这个 kotlin 函数。 fun View.updateViewBGSolidColor(colorString: String) { when (val background: Drawable = this.background) { is ShapeDrawable -> { background.paint.color = Color.parseColor(colorString) } is GradientDrawable -> { background.setColor(Color.parseColor(colorString)) } is ColorDrawable -> { background.color = Color.parseColor(colorString) } } } 像下面这样使用它: yourTextView.updateViewBGSolidColor("#FFFFFF") GradientDrawable gd = new GradientDrawable( GradientDrawable.Orientation.TOP_BOTTOM, new int[] {0xFF616261,0xFF131313}); gd.setCornerRadius(0f); layout.setBackgroundDrawable(gd); 对于 compileSdkVersion 33 的 2023 年,接受的答案在某种程度上起作用了。我的形状是复杂视图的简单圆形边框 <?xml version="1.0" encoding="utf-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <stroke android:width="2dp" android:color="@color/white"/> <corners android:bottomRightRadius="10dp" android:topLeftRadius="10dp" android:topRightRadius="10dp" android:bottomLeftRadius="10dp"/> </shape> 形状在名为background的视图中设置为VScroll。我需要形状的颜色与主题视图相同,所以我调整了接受的答案: val lineBackground = binding.vScroll.background as GradientDrawable lineBackground.setStroke(5,Color.parseColor(line.color)) 其中 line.color 是一个十六进制字符串值,如 #FFFFFF。 stroke width 的 int 值以像素为单位设置,因此必须将其转换为 dp 以获得正确的大小。

回答 19 投票 0

如何在javafx中将形状从圆形变为矩形

我想使用javafx场景形状在javafx中将形状从圆形变为矩形。 Circle c = new Circle(); Rectangle r = new Rectangle();

回答 1 投票 0

编辑形状的超链接

我在众多工作表中有数百种形状的超链接。下面的代码非常适合全局更改所有这些工作表的超链接,因为我只是更改了超链接的一部分....

回答 1 投票 1

尝试使用tensorflow数据集为keras模型准备CSV

我确实准备了一个keras CNN模型,它希望[None,20,20,3]数组作为输入。 (这里的图像大小是20 ...)另一方面,我的云存储中有一个带有1200(20 * 20 * 3)列的CSV。一世 ...

回答 1 投票 0

setFrame,JSlider的错误

所以我正在为一个更大的项目测试一个JSlider而无法让它工作。滑块应该调整圆的大小,它不起作用。我以为我可能有问题...

回答 1 投票 0

Excel VBA - 如何从工作簿B传输形状并替换工作簿A中的特定现有形状?

预先感谢您的任何帮助。我的知识是初级水平。我可以阅读代码,但很难写作。我不确定这个最新错误指的是哪一行。另外,我假设总有......

回答 1 投票 0

iOS - 当前视图控制器内的Swift绘制形状

我不确定从哪里开始,并且正在寻找是否有人可以直接指出我。我正在建立在以下项目之上:https://github.com/hoiberg/HM10-BluetoothSerial-iOS ...

回答 1 投票 -3

© www.soinside.com 2019 - 2024. All rights reserved.